Node.js Gitlab CI-npm';未被识别为内部或外部命令、可操作程序或批处理文件
我正在尝试在gitlab中运行CINode.js Gitlab CI-npm';未被识别为内部或外部命令、可操作程序或批处理文件,node.js,docker,continuous-integration,gitlab,Node.js,Docker,Continuous Integration,Gitlab,我正在尝试在gitlab中运行CI image: node:latest stages: - deploy production: stage: deploy before_script: - npm config set prefix /usr/local - npm install -g serverless script: - serverless deploy 我正在使用docker图像,就像他们建议的那样,但它找不到npm(或节点) 我怎
image: node:latest
stages:
- deploy
production:
stage: deploy
before_script:
- npm config set prefix /usr/local
- npm install -g serverless
script:
- serverless deploy
我正在使用docker图像,就像他们建议的那样,但它找不到npm(或节点)
我怎样才能让它工作呢?嗯,这有点奇怪,因为你的ci是正确的 如果您只是在使用gitlab.com及其共享的运行程序,那么这个.gitlab-ci.yml就可以了 一个可能的原因可能是您在项目repo中添加了作为ssh/shell执行者的运行程序。如果是这样,那么您指定的图像标记将被忽略 因此,由于您添加运行程序的服务器未安装nodejs,可能会出现类似于未找到
命令的错误,并且此错误将出现在before脚本中的npm config…
命令中,退出代码为127,管道将在此失败并停止
如果您有多个跑步者,请标记他们,并在ci.yml中标记您的作业。
如果您试图在自己的服务器上运行作业,那么您必须首先安装docker
顺便说一句,docker image node:latest您不需要npm配置设置前缀/usr/local
,因为它已经是/usr/local