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



在这个Dockerfile中,我有一个ENTRYPOINT,它调用一个脚本,该脚本只记录一个echo"测试";。当我构建并运行Dockerfile时,这个输出在本地工作。当我与docker compose一起使用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 run容器时,它将只执行ENTRYPOINT和/或CMD(在这种情况下,是ENTRYPOINT的输出,因为没有CMD(

最新更新