美文网首页
Docker中CMD与ENTRYPOINT的简明理解

Docker中CMD与ENTRYPOINT的简明理解

作者: imroc | 来源:发表于2017-09-03 15:08 被阅读0次

CMD提供容器启动的默认行为,运行不指定运行的命令及参数,会默认执行CMD中的。

例如hello镜像的Dockerfile中有 CMD ["echo","'hello world'"]

  • 执行 docker run hello,输出hello world
  • 执行 docker run hello /bin/sh -c "shit" 则会覆盖CMD中所有的东西,输出shit

ENTRYPOINT让容器可以当成一个普通的可执行命令一样使用。

例如echo镜像的Dockerfile中有ENTRYPOINT ["/bin/echo"]

  • 执行docker run echo "hello world",输出hello world

若同时CMD也存在,比如: CMD ["'hello world'"] ,那么CMD中的值就是ENTRYPOINT的默认参数。

  • 执行 docker run echo, 即不加参数,也会输出hello world

相关文章

网友评论

      本文标题:Docker中CMD与ENTRYPOINT的简明理解

      本文链接:https://www.haomeiwen.com/subject/vacjjxtx.html