作者:手机用户2502939333 | 来源:互联网 | 2023-02-13 16:43
好了,只是学习创建一个Dockerfile,我的理解(这可能是错误的)是该CMD
命令应该能够在容器内放置一个shell脚本.
我只是尝试使用vanilla apache2安装
Dockerfile
FROM ubuntu:latest
ADD install-apache.sh /Scripts/install-apache.sh
RUN chmod +x /Scripts/install-apache.sh
CMD [/Scripts/install-apache.sh]
RUN echo "Hope this worked!"
我也试过这个:
CMD ["/Scripts/install-apache.sh"]
当我使用RUN
它的命令时(没有[和])
所以我有点迷失了CMD
想要做的事情.
我按照http://kimh.github.io的说明进行操作,
并阅读了docker文档.
问题:
我如何使用CMD
错误,如何在这种情况下使用它?
1> Sebastian..:
RUN
在构建图像时执行.这通常用于在生成的图像中安装或执行修改.
CMD
在容器启动时执行.使用它来启动应用程序.
另请查看文档
CMD的主要目的是为执行容器提供默认值.这些默认值可以包含可执行文件,也可以省略可执行文件,在这种情况下,您还必须指定ENTRYPOINT指令.
是的.您可以将`CMD [/Scripts/install-apache.sh]`更改为`RUN/Scripts/install-apache.sh`,它可以完成您期望的操作.作为`CMD`的一个例子,你可能想要`CMD ["httpd"," - DWOREGROUND"]`这样的容器在容器启动时自动为你启动apache.