pm2使用环境变量启动新进程

1.创建配置文件ecosystem.config.js如下,将命令写进script,环境变量写进env:

module.exports = {
  apps : [
      {
        name: "myapp",
        script: "yarn start",
        watch: true,
        env: {
          "NODE_ENV": "development",
          "PORT":3000,
        }
      }
  ]
}

2.运行配置文件:

pm2 start ecosystem.config.js

3.若修改了源代码代码,重新打包项目:

yarn build

然后重启进程:

pm2 restart ecosystem.config.js

参考文献:pm2环境变量

### 如何在 PM2 中添加环境变量 PM2 是一种高效的 Node.js 进程管理工具,支持多种方式来设置和传递环境变量给运行的应用程序。以下是几种常见的方法: #### 方法一:通过 `--env` 参数指定环境文件 可以使用 PM2 的 `--env` 参数加载预定义的环境配置文件。这些文件通常位于项目的根目录下,并命名为类似于 `.env.production` 或 `.env.development`。 ```bash pm2 start ecosystem.config.js --env production ``` 此命令会告诉 PM2 使用生产环境中定义的变量[^1]。 #### 方法二:直接在启动命令中传入环境变量 可以在启动应用时直接向 PM2 提供自定义的环境变量。例如: ```bash pm2 start index.js --name my-app -i max --watch --restart-delay=5000 \ -e "NODE_ENV=production DATABASE_URL=mysql://user:password@localhost/db" ``` 上述代码片段展示了如何手动注入多个环境变量到正在运行的服务中[^2]。 #### 方法三:利用生态系统配置文件 (Ecosystem File) 创建一个 JSON 配置文件(如 `ecosystem.config.js`),其中包含所有必要的参数以及所需的环境变量设定。下面是一个例子: ```javascript module.exports = { apps : [{ name : 'my-node-application', script : './index.js', // 应用入口点 env : { NODE_ENV: 'development' }, env_production : { NODE_ENV: 'production', PORT : 80, BASE_URL : 'https://www.example.com/' } }] }; ``` 之后可以通过如下指令启动服务并自动读取相应的环境变量集合: ```bash pm2 start ecosystem.config.js --env production ``` 这种方法允许开发者根据不同阶段的需求灵活切换不同的环境设置。 #### 方法四:全局安装 Sequelize CLI 并结合 .sequelizerc 文件 虽然这一步骤主要涉及数据库迁移框架 Sequelize 的初始化过程,但它同样可能涉及到一些环境变量的操作。如果项目依赖于 Sequelize,则需先完成其CLI工具链的搭建工作: ```bash npm install -g sequelize-cli || yarn global add sequelize-cli ``` 接着,在`.sequelizerc`里也可以适当引入process.env对象获取外部输入的数据源链接等敏感信息[^3]。 --- ### 注意事项 当调整任何现有的PM2进程组时,请记得清理旧版本再重试新策略下的部署流程;另外始终确认目标机器上的实际生效状态是否符合预期。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值