jenkins如何部署pm2管理的express Node.js服务比较合适?

非docker化的pm2管理的express node.js服务,如何使用jenkins管理比较合适?百度找了一实践,但是个人感觉有奇怪:
1:把整个应用git拉下来,然后打包成tar,包括node_modules,然后通过SSH上传到指定服务器,再使用pm2管理。 但是这个操作,不同服务器上安装的 node_modules 包直接复制过来,不会有问题吗?这是我担心的一个点。

2:这个2是我自己想的,但是觉得也有很不足,直接在jenkins里SSH进去特定服务器,然后到指定目录下,每次去git更新代码,然后再执行pm2命令更新,但是这样jenkins里不是通过git插件更新代码的,就不能在jenkins看到git每次的更新记录,同时执行了pm2命令,但是不知道pm2日志里是否有输出错误日志,服务是否有报错并不清楚。

所以对于非docker化的pm2管理的node.js服务,不知道使用jenkins部署怎么才是比较合适的操作,想要在jenkins里可以看到git每次更新的代码,可以确定pm2重启是否成功,求大神指教?

阅读 2.2k
1 个回答

平时怎么部署, 使用jenkins时也可以怎么部署.
jenkins说白了, 就是自动去执行某些 命令而已.

  1. 不会影响的, 除非你使用的是不同版本的node
  2. 相看git记录, 也可以只拉取, 不打包. ssh连接服务器执行命令, 也会有输出日志的.
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题