带有 PM2 的 Jenkins - 可能进入正在运行的服务器的问题

标签 jenkins deployment centos pm2

有关于 pm2 的问题。现在我有一个 Jenkins,它应该在每次提交期间构建一个应用程序。一切正常。在管道中,Jenkins 应该使用 PM2 启动服务器。
现在 Jenkins 可以访问 pm2 并且一切正常。不幸的是,问题是当我在用户“测试”并写入 pm2 ls 时- 我看到一个空的进程列表。
这导致了一些问题,因为我的 nginx 无法检测到正在运行的应用程序,所以我收到“502”。
在 Jenkins ,当我写 pm2 ls我看到这个过程运行良好。还尝试了 sudo pm2 start然后在控制台sudo pm2 ls - 在这种情况下,我看到了进程,但在 jenkins 中,状态是 success但是在终端中-它出错了,而且 nginx 也看不到该服务器。
还有重要的信息,当我输入命令时: pm2 start "npm run start-prod" --name myAppName - 过程见test用户和 nginx 也可以正常工作。
您知道如何与 Jenkins 解决 PM2 并将流程设置为“全局”并由“测试”用户看到吗?

最佳答案

要做到这一点 - 我应该在 pm2 中使用 --watch 标志。这使我可以查看文件中的更改并通过测试用户运行它。

关于带有 PM2 的 Jenkins - 可能进入正在运行的服务器的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70566765/

相关文章:

docker - 如何创建子域以公开运行到 Jenkins 管道中的 docker 容器中的应用程序

batch-file - Jenkins 总是认为使用批处理/bat 构建成功

deployment - 自动部署混合SSIS/DLL解决方案

java - 在 CentOS 上通过节点启动 appium 的 appium.js 文件位置是什么

python-3.x - Gunicorn 没有自动启动

python - 如何故意导致Errno 23 ENFILE

jenkins - 如何从 Jira 中的状态更改触发 Jenkins 作业

java - SonarQube 因错误而停止

sql - 推荐的方法如何修改生产 SQL 数据库的架构?

java - 部署后更改 Java 代码