首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自定义码头形象不继承CMD

自定义码头形象不继承CMD
EN

Stack Overflow用户
提问于 2017-11-01 20:07:12
回答 1查看 3.4K关注 0票数 16

我有一个使用以下Dockerfile构建的映像:

代码语言:javascript
复制
FROM php:7-fpm
COPY docker-entrypoint.sh /usr/local/bin/docker-entrypoint
RUN chmod +x /usr/local/bin/docker-entrypoint
ENTRYPOINT ["docker-entrypoint"]

它使用一个自定义入口点,它是以下bash脚本:

代码语言:javascript
复制
#!/bin/bash
set -e
echo "STARTING PHP FPM, CMD $@"
docker-php-entrypoint "$@"

它的Dockerfile中定义的父映像的命令是CMD ["php-fpm"]

现在,我希望这个命令能够以我的形象继承下来。但是,当我运行映像时,命令是空的。下面是docker run命令的输出:

启动PHP,CMD

但是,如果我将CMD ["php-fpm"]复制到自定义Dockerfile的末尾,则输出为

启动PHP FPM,CMD php-fpm 01-2017年11月20:04:02通知: fpm正在运行,pid 7 01-2017年11月20:04:02通知:准备好处理连接

为什么父程序的CMD指令没有继承?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-01 20:39:25

这种行为正试图变得更加直观,但我也认为这有点让人困惑。你看到原版了。这个问题是,大多数在子映像中定义ENTRYPOINT的人不再想要父映像中的CMD

对于当前的行为,如果在子映像中定义ENTRYPOINT,则父映像中的CMD将为空,因此,如果需要设置它,则需要重新定义它。

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47062854

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档