您的位置:首页 > 运维架构 > Docker

Dockerfile指令

2016-07-19 00:00 751 查看
1From

已经存在的基础镜像,必须为Dockerfile非注释的第一条指令

2MAINTAINER <name>

指定镜像的作者信息,包含镜像的所有者和联系信息

3RUN

指定当前镜像中运行人命令

RUN <command> (shell 模式)

/bin/sh –c command

DEMO: RUN echo hello

RUN [“executable”,”param1”,”param2”] (exec模式)

RUN[”/bin/bash”,”-c”,”echo hello”]

4 EXPOSE 80

指定运行该镜像的容器使用的端口

docker不会自动打开该端口,使用时需要映射

5CMD

CMD提供容器运行时默认命令,运行时的默认行为。会被运行时指定的指令覆盖

RUM在构建时运行

6ENTERYPOINT

和CMD类似但不会被运行时指定覆盖指令

7ADD

ADD 包含类似tar的解压功能

8COPY

单纯复制文件,Docker推荐使用copy

9VOLUME

特定目录,共享数据提供容器持久化功能

10WORKDIR

工作目录

11ENV

环境变量

ENV <key> <value>

12USER

指定默认运行用户,如果不使用user默认使用root用户

13ONBUILD

镜像触发器,不会在本次构建镜像中构建。

当一个镜像被其他镜像作为基础镜像时执行会在构建过程中插入指令

14构建过程

从基础镜像运行一个窗口

执行一条指令,以窗口做出修改

执行类似docker commit的操作,提交一个新的镜像层

再基于刚提交的镜像运行一个新容器

执行Dockerfile中的下一条指令,直至所有指令执行完毕。

使用中间层镜像进行调试查找错误。

构建缓存,一次构建后下次使用缓存

不使用构建缓存 使用—no-cache选项,或使用 REFLUSH_DATE 标识时间
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: