所以我有一个泊坞窗映像Vidyo / mediabridge,我想自动运行一些脚本,这些脚本在启动时启动容器内的任务,所以当我以如下方式运行映像时:
docker run vidyo/mediabridge
OR
dockerfile:
from vidyo/mediabridge
泊坞窗执行:
docker build . -tag basicimage
docker run basicimage
我得到输出为
*** Running /etc/my_init.d/00_regen_ssh_host_keys.sh...
*** Running /etc/rc.local...
*** Booting runit daemon...
*** Runit started as PID 8
但是当我编辑图像并将其作为dockerfile运行时:
from vidyo/mediabridge
CMD echo "hi"
它给出的输出为
hi
然后退出,所以基本上我的基本映像vidyo / mediabridge没有运行,当我尝试执行其他命令时,例如
docker文件
from vidyo/mediabridge
ENTRYPOINT curl $s3path -o /opt/vidyo/config && sleep 10 && ./opt/vidyo/connect
表明
* syslog-ng is not running
* Starting system logging syslog-ng
* Retrying
然后它存在,任何人都可以帮忙,我认为我的基本映像vidyo / mediabridge无法正常运行。可以运行基本映像,然后执行命令。
当您添加CMD或ENTRYPOINT时,它将覆盖您正在使用的基本映像上的CMD或ENTRYPOINT。
要扩展此图像,请勿添加其他CMD或ENTRYPOINT。如果要添加RUN来执行任务,它们将起作用。
请注意,您不必将以上任何命令添加到Dockerfile中。只要您不添加其他图片,父图片就会保留下来。
如果要修改或添加CMD,请执行以下操作:我建议docker inspect image vidyo/mediabridge
您获取基本容器正在运行的命令或ENTRYPOINT,并将其添加到作为CMD运行的shell脚本的末尾。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句