我有一个以以下内容开头的Dockerfile:

FROM puppet/puppetserver

当我看source container时,它是从another构建的:
FROM puppet/puppetserver-standalone:5.0.0

第二个包含CMD命令:
ENTRYPOINT ["dumb-init", "/docker-entrypoint.sh"]
CMD ["foreground" ]

在我自己的容器中,我以:
COPY start.sh /
CMD /start.sh
CMD运行,但结果出乎意料:



我知道我有bash可用,因为我在同一个Dockerfile中使用RUN commands.sh之前先使用CMD

从基本镜像继承时,CMD命令如何堆叠?

我的CMD是否不能作为普通的bash命令运行,而是与基本镜像的CMD一起运行?

最佳答案

您需要从父镜像重置ENTRYPOINT

COPY start.sh /
ENTRYPOINT []
CMD /start.sh

关于docker - 当基本镜像具有CMD时,Docker CMD?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46221895/

10-16 08:33