docker学习笔记11:Dockerfile指令CMD介绍

我们知道,通过docker run创建并启动一个容器时,命令的最后可以指定容器启动后在容器内立即要执行的指令,如:

docker run -it ubuntu /bin/bash  //表示容器启动时立即在容器内容打开一个shell终端内立即要执行的指令
docker run ubuntu /bin/ps    //表示容器启动后立即运行 /bin/ps命令,显示容器的当前进程

除了这种方式外,我们可以在Dockerfile文件中通过CMD指令指定容器启动时要执行的命令。如:

#test
FROM ubuntu
MAINTAINER xxx
RUN echo hello1 > test1.txt
RUN echo hello2 > /test2.txt
EXPOSE 80
EXPOSE 81
CMD ["/bin/bash"]

上面dockerfile文件中最后一行CMD指令的参数是指定容器启动时要执行的命令,这里是bin/bash命令。

  • 用docker run命令创建并启动容器(myimage 是用前面dockerfile创建的镜像的名称):
docker run -it myimage

上面命令是创建并启动容器,打开一个交互式shell。而以前的写法是

docker run -it myimage /bin/bash

这样就省去了docker run中写命令了。

results matching ""

    No results matching ""