node.js - 如何在dockerfile中放置双&符号
问题描述
我写了一个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 start”。
如何将此选项放在 dockerfile 中?感谢您阅读。
解决方案
如果 'some.sh' 中发生错误,则不会执行 'yarn start'。
你必须选择
- 忽略是否发生错误
some.sh
-
yarn start
如果发生错误,请不要运行some.sh
对于第一个选项
CMD ["sh", "-c","./some.sh ; yarn start"]
即使some.sh
以状态码退出,这也会忽略1
。
第二个选项,yarn start
如果 some.sh exit with1
则不运行,否则运行。
CMD ["sh", "-c","./some.sh && yarn start"]
推荐阅读
- python - 如果 pandas 中没有其他唯一列,如何将多列转换为单独的行/值?
- azure - 如何自动更新服务总线队列消息的锁定持续时间
- c++ - std::condition_variable::wait_until 的返回值
- javascript - Fullcalendar 没有水平滚动条
- postgresql - 是否可以在 postgreSQL 的策略中获取查询信息?
- github - 如何根据文件夹匹配有条件地运行 git 操作
- jenkins - 詹金斯:我们可以用用户定义的分支检查子模块吗
- android - 如何显示没有三点android的选项菜单?需要去掉三点菜单并在底部显示选项菜单
- bash - 如何在使用 shell 脚本编写时通过修改将数据从一个文本文件写入另一个文本文件
- javascript - application/dns-message 使用哪种编码?