docker Dockerfile 参数讲解

  maintainer  这个参数已经弃用了 官方推荐 LABEL 作为信息标注

  ADD 命令

    ADD有2个参数,源和目标。它的基本作用是从源系统的文件系统上复制文件到目标容器的的文件系统。如果源是1个URL,那该URL的内容将被下载并复制到容器中。

    如 ADD run.sh /

  CMD 命令

    和RUN命令相似,CMD可以用于执行特定的命令。和RUN不同的是,这些命令不是在镜像构建的过程中执行的,而是在用镜像启动容器后被调用。

    如 CMD "command" "arg1" "arg2"

  COPY 命令

    用于复制文件到镜像中

    COPY <src> <dst>

    src 只能是与Dockerfile同级的本地文件

    如 COPY run.sh /

  ENTRYPOINT 命令

    配置一个容器使之可执行化,如果结合CMD命令和ENTRYPOINT命令,可以从CMD命令中移除"application" 而仅仅保留参数,参数将传递给ENTRYPOINT命令

    如 ENTRYPOINT ["/run.sh","arg1","arg2"]

  ENV 用于设置环境变量 。 这些变量以 "key=value"的形式存在,在Dockerfile中其他命令里可以直接引用,并可以在容器内被脚本或者程序调用

    如  ENV version=12345

       ENV release 1.0.1

  EXPOSE 用来指定容器内端口映射到外部,是容器内的应用可以通过端口和外界交互

    如 EXPOSE 8080

  FROM 指定基础镜像

    如 FROM lentos:7

  LABEL 为镜像定义标签信息

    如 LABEL job.name="Project1" build.user="admin"

  ONBUILD 只针对当前镜像生效

  RUN 是Dockerfile执行shell命令的核心部分。接受命令作为参数并用于创建镜像,不像CMD命令。RUN命令用于创建进行过程中  多条命令以&或‘;’ 结合

    如 RUN yum update -y && yum install -y vim

  STOPSIGNAL 当容器退出时给系统发送什么样的指令

  USER 用于设置运行容器的用户与组

    如  USER www.www

       USER admin

       USER 1000

  VOLUME 创建一个可以从本地主机或其他容器挂载的挂载点,一般用来存放数据库等各种需要持久化的数据

    如 VOLUME ["/data"]

  WORKDIR 设置CMD指明的命令运行目录

    如 WORKDIR /tmp

 

posted @ 2019-10-22 19:25  超我  阅读(3123)  评论(0编辑  收藏  举报