论docker中 CMD 与 ENTRYPOINT 的差异
发布时间:2022-05-24 12:37:42 所属栏目:云计算 来源:互联网
导读:Dockerfile 用于自动化构建一个docker镜像。Dockerfile里有 CMD 与 ENTRYPOINT 两个功能咋看起来很相似的指令,开始的时候觉得两个互用没什么所谓,但其实并非如此: CMD在容器运行的时候提供一些命令及参数,用法如下: 复制 CMD [executable,param1,param2
Dockerfile 用于自动化构建一个docker镜像。Dockerfile里有 CMD 与 ENTRYPOINT 两个功能咋看起来很相似的指令,开始的时候觉得两个互用没什么所谓,但其实并非如此: CMD在容器运行的时候提供一些命令及参数,用法如下: 复制 CMD ["executable","param1","param2"] (exec form, this is the preferred form) CMD ["param1","param2"] (as default parameters to ENTRYPOINT) CMD command param1 param2 (shell form) 1. 2. 3. 第一种用法:运行一个可执行的文件并提供参数。 第二种用法:为ENTRYPOINT指定参数。 第三种用法(shell form):是以”/bin/sh -c”的方法执行的命令。 如你指定: 复制 CMD [“/bin/echo”, “this is a echo test ”] 1. build后运行(假设镜像名为ec): 复制 docker run ec 1. 就会输出: this is a echo test 是不是感觉很像开机启动项,你可以暂时这样理解。 ENTRYPOINT 字面意思是进入点,而它的功能也恰如其意。 An ENTRYPOINT allows you to configure a container that will run as an executable.它可以让你的容器功能表现得像一个可执行程序一样。 容器功能表现得像一个可执行程序一样,这是什么意思呢? (编辑:泉州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐