资讯专栏INFORMATION COLUMN

Dockerfile中容易混淆的命令详解

nidaye / 2532人阅读

摘要:和命令解释执行命令并创建新的设置容器启动后默认执行的命令和参数设置容器启动时运行的命令执行方式注意事项使用命令构建镜像时需要放在同一个命令中,否则会从缓存中安装软件,导致执行毫无意义的软件尽量一个一行并且按照字母顺序排列

RUNCMDENTRYPOINT 命令解释

RUN 执行命令并创建新的Image Layer

CMD 设置容器启动后默认执行的命令和参数

ENTRYPOINT 设置容器启动时运行的命令

执行方式

EXEC

FROM debian
RUN ["apt-get","install","-y","vim"]
CMD ["/bin/echo","hello world!!"]
ENTRYPOINT ["/bin/echo","hello world!!"]

SHELL

 FROM debian
 RUN apt-get install -y vim
 CMD echo "hello world!!"
 ENTRYPOINT echo "hello world!!"

注意事项

使用run命令构建镜像时apt-get update && apt-get install -y需要放在同一个RUN命令中,否则apt-get install会从缓存中安装软件,导致apt-get update执行毫无意义

apt-get install 的软件尽量一个一行并且按照字母顺序排列,这样可以避免安装重复的命令

apt-get install安装软件时可以为软件指定特定的版本apt-get install -y aufs-tools s3cmd=1.1.*

命令差异

CMD

容器启动时默认执行的命令

docker run 指定了其他命令,CMD会被忽略

如果定义了多个CMD,只有最后一个会执行

ENTRYPOINT

让容器以运用程序或者服务的形式运行

不会被忽略,一定会执行

最佳实践,写一个shell脚本作为entrypoint

COPY ./script/test.sh /usr/local/bin
ENTRYPOINT ["test.sh"]

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/27897.html

相关文章

  • 从零开始学习 Docker

    摘要:此命令下载测试镜像并在容器中运行它。国内很多云服务商都提供了加速器服务,例如阿里云加速器注册用户并且申请加速器,会获得如这样的地址。获取镜像阿里云镜像库上有大量的高质量的镜像可以用,这里我们就说一下怎么获取这些镜像并运行。 showImg(https://segmentfault.com/img/remote/1460000012924583); 这篇文章是我学习 Docker 的记录...

    lily_wang 评论0 收藏0
  • Docker Swarm前世今生

    摘要:当然此时的局限性较大,比如没有副本和负载均衡的概念,这导致服务无法高可用当然也更不存在什么服务网络管理和跨节点数据存储这些东西没有服务模型集群中服务间关系和启动顺序编排也很复杂于是就有了下面的的诞生。 showImg(https://segmentfault.com/img/remote/1460000015317037?w=1885&h=1153); 概述 在我的《Docker S...

    lemon 评论0 收藏0
  • 【容器实例 Cube】创建详解:快速创建教程

    摘要:创建详解通过上面的快速创建我们接下来将通过上面的例子来进行创建操作中的详细设置说明。高阶设置高阶设置中将针对容器进行详细的参数设置。挂载路径卷名称注意如没有创建卷设置,在挂载卷中将选择不到具体的卷名称,请先创建卷设置。快速创建快速创建Cube实例点击Cube的创建按钮进入创建页面,为你的容器组起一个名字;选择一个仓库内的镜像,这里快速创建我选择的UCloud镜像仓库nginx镜像1.17.1...

    Tecode 评论0 收藏0
  • 编写dockerfile 时常用到命令详解

    摘要:常用命令什么的是高级包装工具英语简称是及其衍生发行版如的软件包管理器。中文参数用法选项命令选项选项是一个下载安装软件包的简单命令行接口。最常用的命令是更新和安装。 apt-get常用命令 1.什么的是apt-get 高级包装工具(英语:Advanced Packaging Tools,简称:APT)是Debian及其衍生发行版(如:ubuntu)的软件包管理器。APT可以自动下载,配...

    余学文 评论0 收藏0

发表评论

0条评论

nidaye

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<