详细信息如下:
4.812 /bin/sh: ENTRYPOINT: not found
ERROR: failed to solve: process "此处省略; \t\t\t\t\t\tENTRYPOINT [\"node\",\"main.js\"]" did not complete successfully: exit code: 127
Stage "deploy" skipped due to earlier failure(s)
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // withEnv
[Pipeline] End of Pipeline
ERROR: script returned exit code 1
Finished: FAILURE
可以看到depoly的上一步出错了,导致deploy较早退出,整个过程结束,从报错信息看到核心在于:ERROR: failed to solve: process下面的
所描述的正是脚本中关于Dockerfile的部分,仔细检查所写的指令,发现在ENTRYPOINT的前一句后语法不正确:
RUN a ; \
b ; \
c ; \
ENTRYPOINT ["node","main.js"]
其中a、b、c都是命令行,此处简写方便观察,很明显c这里已经是RUN指令的最后一处,应去掉行后的 ;\ 符号,否则会把ENTRYPOINT 这一行也算为RUN指令的一部分。
因此,去除多余的;\ 符号,保存,再次构建就成功了。