PM2 启动时自动设置环境变量的实现方式

· 约 4 分钟读完

在前端项目开发中,我们经常需要用到环境变量来控制不同环境下的配置、调试等。而在使用 PM2 管理、启动 Node.js 应用时,需要手动设置环境变量,这样就存在人为失误、团队协作等问题。那么如何实现 PM2 启动时自动设置环境变量呢?本文将详细介绍实现方式,并提供示例代码。

实现方式

具体实现方式分为两种:

方式一:使用 PM2 启动参数

在使用 PM2 启动 Node.js 应用的时候,可以通过传递参数来设置环境变量。具体方法如下:

其中,--env 参数可以用来指定单个的环境变量,使用键值对 KEY=VALUE 的方式进行设置。--env-file 参数用于指定一个 .env 文件,该文件中可以设置多个环境变量,格式为 KEY=VALUE。

但是,这种方式存在一个问题:需要在启动命令中手动设置环境变量,如果团队协作时忘记设置,就会导致问题。为了解决这个问题,我们需要使用到第二种实现方式。

方式二: 使用 ecosystem.config.js 文件

PM2 提供了一个配置文件 ecosystem.config.js ,可以在文件中设置环境变量,并且自动识别和加载。具体步骤如下:

  1. 在项目根目录下,创建 ecosystem.config.js 文件:
  1. 在 env 或 env_production 中设置需要的环境变量。

  2. 在启动命令中使用 pm2 start 命令,PM2 会自动识别和加载 ecosystem.config.js 配置文件,并自动设置环境变量。

学习和指导意义

使用 PM2 启动时自动设置环境变量,不仅可以提高开发效率,更可以减少人为失误、规避不必要的错误。此外,了解 PM2 的相关功能和配置,也可以帮助我们更好地管理和监控 Node.js 应用,提高应用的健壮性和质量。

示例代码

示例代码如下:

以上代码演示了如何在 PM2 中自动设置环境变量,并在 Express 应用中读取和使用环境变量。

注意事项:

  • 在环境变量中存放重要信息时,应注意保密性和安全性。
  • 在使用 --env 参数启动命令时,键值对中的值只能是字符串类型,不支持其他类型。
  • 在使用 --env-file 参数启动命令时,.env 文件需要放在 Node.js 应用的根目录下,否则 PM2 无法识别。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/67bfc1c40c976d473a4932d9