Azure管道:在自托管的虚拟机上运行 "npm启动"。

问题描述 投票:0回答:1

我想在Azure上运行CICD管道,以在自托管机器上构建和发布一个nodejs webapp。我已经成功地设置了一个管道来检查代码、构建代码并发布工件。现在,我想有一个发布管道,下载在构建管道中创建的工件,将其部署到部署组中,并使用以下方法启动应用程序 npm start.

我可以管理所有的步骤,除了最后一个。我试着添加一个自定义的 "npm start" 任务到部署组作业。Azure管道到达该步骤,然后挂起。我猜它只是在等待命令完成,而这不会发生,因为这是启动服务器。

有什么办法可以做到这一点?

node.js azure azure-pipelines-release-pipeline npm-start
1个回答
1
投票

npm start 相当于在脚本中运行任何指定的值( start 属性的包.json文件)。) 所以你首先需要检查你的package.json文件。

这里面有一个推测 案子 与类似问题。

的问题: npm start 必须一直运行,这样才能一直使用。所以命令永远不会完成。 解决办法是使用cmd task启动另一个cmd任务,然后在新的cmd中运行npm启动命令。


0
投票

我最后用了我认为比较好的解决办法。我使用 pm2 与 --watch。Azure DevOps 只是将文件复制到 pm2 监视的文件夹中。

© www.soinside.com 2019 - 2024. All rights reserved.