我写了一个dockerfile如下。

FROM mhart/alpine-node:12.18.3
WORKDIR /usr/app
COPY package.json
RUN yarn install
EXPOSE 8000
CMD ["yarn", "start"]
这很好。但我想从&号开始。
例如,我可以在.sh之后运行yarn start。
bash some.sh && yarn start
因此,如果在“some.sh”中发生错误,则不会执行“ yarn 启动”。
如何将此选项放在dockerfile中?感谢您阅读。

最佳答案


你必须选择

  • 忽略some.sh
  • 中是否发生错误
  • 如果yarn start发生错误,请不要运行 some.sh
    对于第一种选择
    CMD ["sh", "-c","./some.sh ; yarn start"]
    
    即使使用状态码some.sh退出1,这也将忽略。
    第二个选项,如果some.sh以yarn start 退出,则不运行1 ,否则运行。
    CMD ["sh", "-c","./some.sh && yarn start"]
    

    关于node.js - 如何在dockerfile中放置双与号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/63276927/

  • 10-16 23:56