nginx 更新eccoystem.js.js后使用旧环境变量的Node应用

cyej8jka  于 2023-11-17  发布在  Nginx
关注(0)|答案(1)|浏览(174)

我使用pm2和nginx创建了一个节点服务器,可以同时运行多个应用程序。我刚刚向服务器添加了一个新应用程序,在部署过程中,一些env变量设置错误,不适合生产环境。我编辑了eccosystem.confg.js以删除多余的变量,并运行以下命令:

  1. pm2 reload ecosystem.config.js --update-env
  2. pm2 save

字符串
在更改生态系统配置后,应用程序仍然显示旧的env vars为set。有什么方法可以告诉env正在设置的位置吗?是否需要清除缓存?我没有首先设置此服务器,所以我对在哪里查看更改env的知识有限。我检查了ecosystem.js.js和sites-avalibble文件夹中的配置文件。
Additional Info
旧的ecosystem.js

  1. {
  2. name: "new-app-name",
  3. script: '/var/www/myNewApp.com/NEW-APP/app.js',
  4. watch_delay: 1000,
  5. exec_interpreter: "[email protected]",
  6. watch_delay: 1000,
  7. watch: true,
  8. env: {
  9. "PORT" : 4000,
  10. "NODE_ENV" : "production",
  11. "PROTOCOL" : "https",
  12. "DOMAIN" : "myDomain",
  13. "EXTENSION" : "com",
  14. "PWD" : "myPassword",
  15. "USE_LONGJOHN" : false,
  16. "NODE_TLS_REJECT_UNAUTHORIZED" : 0,
  17. "NODE_EXTRA_CA_CERTS": "/path/to/cert.pem"
  18. }
  19. }


新的ecosystem.js

  1. {
  2. name: "new-app-name",
  3. script: '/var/www/myNewApp.com/NEW-APP/app.js',
  4. watch_delay: 1000,
  5. exec_interpreter: "[email protected]",
  6. watch_delay: 1000,
  7. watch: true,
  8. env: {
  9. "PORT" : 4000,
  10. "NODE_ENV" : "production",
  11. "PROTOCOL" : "https",
  12. "DOMAIN" : "myDomain",
  13. "EXTENSION" : "com",
  14. "PWD" : "myPassword",
  15. "USE_LONGJOHN" : false,
  16. "NODE_TLS_REJECT_UNAUTHORIZED" : 1,
  17. }
  18. }


重新加载eccosystem后,env变量已设置

  1. node_version: 18.17.1
  2. version: 1.0.0
  3. unique_id: c96e0ae4-d2a7-49fd-8f41-d1eca6a5edff
  4. ldap: {}
  5. PM2_HOME: /home/pm2/.pm2
  6. NODE_TLS_REJECT_UNAUTHORIZED: 0
  7. NODE_EXTRA_CA_CERTS: /path/to/cert.pem
  8. USE_LONGJOHN: false
  9. EXTENSION: com
  10. DOMAIN: mydomain
  11. PROTOCOL: https
  12. NODE_ENV: production
  13. PORT: 4000
  14. USER: pm2
  15. SSH_CLIENT: 172.0.0.0 56122 22
  16. XDG_SESSION_TYPE: tty
  17. SHLVL: 1
  18. MOTD_SHOWN: pam
  19. HOME: /home/pm2
  20. OLDPWD: /var/www/ldap.com/EDE-LDAP
  21. NVM_BIN: /home/admin/.nvm/versions/node/v14.18.2/bin
  22. SSH_TTY: /dev/pts/0
  23. NVM_INC: /home/admin/.nvm/versions/node/v14.18.2/include/node
  24. DBUS_SESSION_BUS_ADDRESS: unix:path=/run/user/1000/bus
  25. NVM_DIR: /home/admin/.nvm
  26. LOGNAME: pm2
  27. _: 7
  28. XDG_SESSION_CLASS: user
  29. TERM: xterm-256color
  30. XDG_SESSION_ID: 15
  31. PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
  32. XDG_RUNTIME_DIR: /run/user/1000
  33. LANG: en_US.UTF-8
  34. SHELL: /bin/sh
  35. LESSCLOSE: /usr/bin/lesspipe %s %s
  36. PWD: myPassword
  37. SSH_CONNECTION: 172.0.0.0 56122 172.0.0.0 22
  38. NVM_CD_FLAGS:
  39. XDG_DATA_DIRS: /usr/local/share:/usr/share:/var/lib/snapd/desktop
  40. PM2_USAGE: CLI
  41. PM2_JSON_PROCESSING: true
  42. NODE_APP_INSTANCE: 0
  43. vizion_running: false
  44. km_link: false
  45. watch_delay: 1000
  46. namespace: default
  47. script: /var/www/myNewApp.com/NEW-APP/app.js

gudnpqoy

gudnpqoy1#

对于其他遇到这个问题的人,我可以通过删除应用程序然后重新启动来修复它。

  1. pm2 delete <appName>
  2. pm2 start <appName>

字符串

相关问题