typescript编写的node应用部署在docker中遇到的问题

码农天地 -
typescript编写的node应用部署在docker中遇到的问题
问题无法使用pm2,因为pm2会后台运行,docker作为容器时,如果无前台运行的进程,将关闭容器。无法使用pm2-runtime,因为pm2-runtime尚不支持ts-node。解决方案

方案1:使用 ts-node 跳过pm2直接运行项目
方案2:使用 tsc 把ts编译为js,再使用pm2运行项目
方案3:重新编译pm2-runtime,增加其支持ts的能力

方案1的做法,是比较可取的,因为我们使用docker作为容器,其本身就具有自动重启等特点,所以再增加pm2对进程进行保护是多余的,且存在性能损耗。

方案2需要改动项目的配置,在测试环境和本地开发环境不使用docker,则需要做兼容,改动较大,且由于方案1的存在,该方案性价比较低。

方案3,性价比更低。

特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。

Tags 标签

加个好友,技术交流

1628738909466805.jpg