繁体   English   中英

为什么 Dockerfile 中的 ENTRYPOINT 日志输出而不是 CMD 或 RUN

[英]Why does the ENTRYPOINT log output but not the CMD or RUN in Dockerfile

在这个 Dockerfile 中,我有一个ENTRYPOINT调用一个脚本,该脚本只记录一个回声“测试”。 当我构建和运行 Dockerfile 时,此输出在本地工作。 当我与 docker-compose for aws 结合使用时,它也会记录到 cloudwatch。

但是RUNCMD命令不会向控制台或 cloudwatch 输出任何内容,我如何查看它们的输出? 我预计至少会出现一些错误

ENTRYPOINT bash -c "/migrate.sh"

WORKDIR /
RUN yarn
CMD ["yarn migration:run", "dist/src/main"]

我只是用docker build -t test:test . 然后docker run <imagename>

Dockerfile 中的RUN语句仅在您构建容器时调用(此时您应该看到 yarn 的输出)。 当您 docker docker run容器时,它只会执行 ENTRYPOINT 和/或 CMD(在这种情况下,因为没有 CMD,所以是 ENTRYPOINT 的输出)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM