【发布时间】:2019-09-10 09:10:42
【问题描述】:
我已经通过 CLI 工具 (v6.3.0) 创建了一个基本应用程序,并且已经准备好推送到生产服务器并遇到问题。
我正在使用 Shipit 进行部署(这可能不相关),此过程的一部分是安装 npm 依赖项(带有标志 --production)。
一切都顺利部署,直到我的部署运行最终命令npm run start:prod(在节点进程上启动 Nest 应用程序)。它执行以下步骤:
- 删除dist目录
rimraf dist && npm run build的内容; - 尝试重建dist目录
tsc -p tsconfig.build.json的内容; - 运行
node dist/main.js;
所有这一切的问题在于,我认为提供tsc 命令的TypeScript 包是一个devDependency,而不是在npm install 期间使用--production 标志安装的依赖项。
这是一个错误,还是我完全错过了npm run start:prod 命令的要点。我很欣赏全局安装 TypeScript 包可能会解决问题,尽管我不确定这是意图还是假设?
如果您将 NestJS 部署到生产环境,您是否使用了其他策略?
【问题讨论】:
-
感谢 Kim,我不确定它是否完全回答了我的问题,但我将其标记为正确,因为它已经走了很长一段路(我怀疑此时是否会有更多答案)。
标签: javascript node.js typescript npm nestjs