[英]pm2 --update-env option seems not working
我像這樣使用生態系統.config.js 啟動了我的節點應用程序。
pm2 start ecosystem.config.js
我的生態系統.config.js 就在這里。
module.exports = {
/**
* Application configuration section
* http://pm2.keymetrics.io/docs/usage/application-declaration/
*/
apps : [
// First application
{
name : "API",
script : "./app/index.js",
env: {
COMMON_VARIABLE: "true"
},
env_production : {
NODE_ENV: "production"
}
},
],
/**
* Deployment section
* http://pm2.keymetrics.io/docs/usage/deployment/
*/
deploy : {
production : {
user : "node",
host : "212.83.163.1",
ref : "origin/master",
repo : "git@github.com:repo.git",
path : "/var/www/production",
"post-deploy" : "npm install && pm2 startOrRestart ecosystem.json --env production"
},
dev : {
user : "node",
host : "212.83.163.1",
ref : "origin/master",
repo : "git@github.com:repo.git",
path : "/var/www/development",
"post-deploy" : "npm install && pm2 startOrRestart ecosystem.json --env dev",
env : {
NODE_ENV: "dev"
}
}
}
}
然后我嘗試更改用於觀看模式的配置文件。 我閱讀了這個文檔,所以我添加了watch: true
屬性,然后我嘗試了pm2 restart ecosystem.config.js --update-env
來應用更改的配置。
應用程序重新啟動並且屬性似乎已更改,因為當我嘗試pm2 list
,監視已啟用。 但是更改代碼后我的應用程序沒有重新啟動。
所以,我只是嘗試pm2 delete 0
, pm2 start ecosystem.config.js
然后它運行良好。
為什么--update-env
選項不起作用? 我做錯了什么?
我發現更新 pm2 應用程序配置的唯一可靠方法是pm2 kill
停止守護程序,或pm2 delete <id|name> && pm2 start ecosystem.config.js
pm2 start ecology.config.js 用於單個應用程序(如@hshan 所述)。
這個問題聲稱它是在 2014 年修復的,但那里的評論,加上我發現的其他問題/問題的字符串似乎另有說明: https : //github.com/Unitech/pm2/issues/528
更新:這里也正在進行討論: https : //github.com/Unitech/pm2/issues/3192
pm2 restart <pid> --update-env
按照此答案中的建議對我pm2 restart <pid> --update-env
嘗試寫入 Z:\\ 驅動器時發生此更新錯誤
但是,我的 Windows 操作系統機器中沒有 Z:\\ 驅動器
下面幫助解決了這個問題:
1 . 添加用戶環境變量如下:
PM2_HOME=%USERPROFILE%\.pm2
2 . 然后殺死 pm2 守護進程一次
pm2 kill
現在pm2 update
工作正常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.