首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Docker基础映像未运行

Docker基础映像未运行
EN

Stack Overflow用户
提问于 2019-10-10 23:25:48
回答 1查看 305关注 0票数 2

所以我有一个docker镜像Vidyo/mediabridge,我想自动运行一些脚本,在启动时启动容器内的任务,所以当我运行我的镜像时:

代码语言:javascript
复制
docker run vidyo/mediabridge
OR 

dockerfile:

代码语言:javascript
复制
from vidyo/mediabridge

docker执行:

代码语言:javascript
复制
docker build . -tag basicimage 
docker run basicimage

我得到的输出是

代码语言:javascript
复制
*** Running /etc/my_init.d/00_regen_ssh_host_keys.sh...
*** Running /etc/rc.local...
*** Booting runit daemon...
*** Runit started as PID 8

但当我编辑图像并将其作为dockerfile运行时:

代码语言:javascript
复制
from vidyo/mediabridge
CMD echo "hi"

它给出的输出为

代码语言:javascript
复制
hi

然后退出,所以基本上我的基本映像vidyo/mediabridge没有运行,当我尝试执行其他命令时,例如

dockerfile

代码语言:javascript
复制
from vidyo/mediabridge
ENTRYPOINT curl $s3path -o /opt/vidyo/config && sleep 10 && ./opt/vidyo/connect

它显示了

代码语言:javascript
复制
 * syslog-ng is not running
 * Starting system logging syslog-ng
 * Retrying 

然后它就存在了,有没有人可以帮助我,我想我的基本镜像vidyo/mediabridge没有正常运行。有没有办法运行基本映像,然后执行命令。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-10 23:51:11

当您添加一个CMD或入口点时,它会覆盖您正在使用的基础映像上的CMD或入口点。

要扩展此映像,请不要添加另一个CMD或入口点。如果你想添加RUN来执行一些事情,它们将会起作用。

请注意,您不必将上述任何命令添加到Dockerfile中。只要你不添加更多的内容,父映像就会一直存在。

如果您想修改CMD或将其添加到其中;我建议使用docker inspect image vidyo/mediabridge,获取您的基容器正在运行的命令或入口点,并将其添加到您作为CMD运行的shell脚本的末尾。

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

https://stackoverflow.com/questions/58326356

复制
相关文章

相似问题

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