Ofi*_*r G 5 deployment node.js typescript pm2 server
使用 pm2 我想部署一个用 typescript 编写的节点应用程序。
该应用程序的存储库位于 git 上,远程计算机与 git 建立了 ssh 连接。
在这种情况下,部署的标准工作流程是什么?
当然,在 git 存储库上只有源(未编译)代码,理想情况下只有编译后的代码(没有 .ts 文件)才会位于服务器上。
编译应该在什么阶段进行?哪里?
如果你们中的一些人遇到这种情况并得到一个实际的例子,具体的配置,这将是非常非常有帮助的
注意:
使用heroku,我只是添加一个"postinstall": "npm run build"脚本package.json并有一个带有类似命令的Procfile web: npm start,
出于某种原因,在这种情况下事情会更复杂。
此外,部署到 Ec2 Linux 实例,具有标准环境(节点、git、pm2 全局以及所有打字稿依赖项(如果需要)等)
理想情况下,您使用 travis-CI 或 gitlab-CI 等构建服务器来构建、测试和部署您的源代码。
我最近问了一个类似的问题,最终构建了以下管道:
npm install安装node_modules*dist文件夹npm prune --production从中删除开发依赖项node_modulesscp复制dist和node_modules生产服务器ssh从早期部署中删除文件并告诉 pm2 重新加载server.js* 请注意,如果您使用的模块使用本机代码并因此在(node-gyp)上编译npm_install,则必须确保您的构建服务器使用与生产环境相同的架构
| 归档时间: |
|
| 查看次数: |
3555 次 |
| 最近记录: |