当前位置: 首页 > news >正文

Dockerfile 里 ENTRYPOINT 和 CMD 的区别

ENTRYPOINT 和 CMD 的区别:

        在 Dockerfile 中同时设计 CMD 和 ENTRYPOINT 是为了提供更灵活的容器启动方式。ENTRYPOINT 定义了容器启动时要执行的命令,而 CMD 则提供了默认参数。通过结合使用这两个指令,可以在启动容器时灵活地指定额外的参数,而不需要修改 Dockerfile。例如,一个Dockerfile 可能如下所示:

FROM ubuntu 
ENTRYPOINT ["echo", "time"] 
CMD ["start"]

        在这个例子中,当容器启动时会执行 echo time start 命令。但是,如果在启动容器时提供了额外的参数,如 docker run my_image end,则会执行 echo time end 命令。 

ADD 和 COPY 的区别:

        ADD 和 COPY 指令,都会复制文件或目录到镜像文件系统中指定的路径下。COPY 指令只有复制本地文件或目录的功能,但 ADD 指令除了复制本地文件或目录的功能,还允许使用 URL 作为参数,这将从 URL 下载文件并将其复制到镜像的指定路径下。另外,ADD 的另一个功能是能够自动解压缩压缩文件,如果给它的参数是本地的压缩格式文件(tar,gzip,bzip2 等),那么 ADD 指令会将它解压缩到镜像文件系统中的指定处,但这种自动解压缩的功能只限于本地文件,通过 URL 指定的压缩文件不会自动解压缩。


 

https://juejin.cn/post/6844903574539862030
https://www.cnblogs.com/sparkdev/p/8461576.html

http://www.lryc.cn/news/342552.html

相关文章:

  • 腾讯的EdgeONE是什么?
  • SVM直观理解
  • Nessus 部署实验
  • 基于Springboot的水产养殖系统(有报告)。Javaee项目,springboot项目。
  • Java性能优化(五)-多线程调优-Lock同步锁的优化
  • WPF (Windows Presentation Foundation) 中 Attribute(属性)和 Property(属性)
  • 环形链表理解||QJ141.环形链表
  • java本地锁与分布式锁-个人笔记 @by_TWJ
  • 【每日刷题】Day33
  • vivado刷题笔记46
  • 网络基础——校验
  • SparkSQL与Hive整合 、SparkSQL函数操作
  • K8s: Helm搭建mysql集群(2)
  • matlab期末知识
  • 多台服务器共享python虚拟环境和Linux安装python虚拟环境
  • 在Python中安装和使用pandas库
  • 零基础学习数据库SQL语句之查询表中数据的DQL语句
  • C++语法|bind1st和bind2nd的用法
  • Zabbix+Grafana-常见报错及异常处理方式记录
  • 一键转换,MP4视频变为MP3音频,只需这一行代码!
  • Oracle12之后json解析包怎么调用
  • wordpress子比主题美化-为图文列表封面添加动态缩略图特效 多种效果演示
  • spring boot3多模块项目工程搭建-上(团队开发模板)
  • 人脸美型SDK解决方案,适用于各类应用场景
  • RS2103XH 功能和参数介绍及规格书
  • nn.TransformerEncoderLayer详细解释,使用方法!!
  • 巨控GRM561/562/563/564Q杀菌信息远程监控
  • RT-DETR-20240507周更说明|更新Inner-IoU、Focal-IoU、Focaler-IoU等数十种IoU计算方式
  • Web3:下一代互联网的科技进化
  • SQL注入-基础知识