docker 学习笔记

这篇博客详细讲解了Docker中ENTRYPOINT与CMD的区别,包括如何覆盖CMD指令,以及docker run与docker start的不同。此外,还探讨了Docker容器的数据管理,如VOLUME在Dockerfile和Compose中的使用,以及如何查看容器内的进程。Dockerfile的CMD、VOLUME和ENTRYPOINT指令在容器运行时的作用也进行了阐述。
摘要由CSDN通过智能技术生成

ENTRYPOINT 和CMD 的区别

Entrypoint

Entrypoint指令用于设定容器启动时第一个运行的命令及其参数。

任何使用 docker run <image> 命令传入的参数都会附加在entrypoint指令之后,并且用此命令传入的参数会覆盖在Dockerfile 中使用CMD指令设定的值。比如docker run <image> bash命令会将bash命令附加在entrypoint指令设定的值的后面。

CMD / command

CMD(Dockerfiles)/ command指令的主要用意是设置容器的默认执行的命令。CMD / command设定的命令会在entrypoint之后执行。

例如,如果你运行docker run <image>,接下来,你运行的镜像的Dokcerfiles中CMD指令配置的命令将会被执行。

CMD / command只会在初始化容器时运行一次,如果 Dockerfile 中如果存在多个 CMD 指令,仅最后一个生效。

类似的的RUN指令是在 docker build时运行

Overriding CMD

你可以在使用命令行启动容器的时候,通过命令行传参的形式覆盖镜像Dockerfiles中的C

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值