Dockerfile 是一个包含构建镜像所有命令的文本文件。 使用 docker build 命令,Docker 将读取并执行 Dockerfile 中的指令自动构建镜像。
# Comment
INSTRUCTION args
Docker 顺序执行 Dockerfile 中的指令。Dockerfile 必须以 FROM 指令开始。 FROM 指令指定了构建镜像的基础源镜像。 注释以 # 符号开头。
Dockerfile 指令选项:
FROM
或
FROM [:]
两种用法:
RUN 指令将在当前镜像之上执行指定命令,并提交为新的镜像。这个提交的镜像会在 Dockerfile 中的下一步被使用。 镜像是分层的,可以通过一个镜像的任何一个历史提交点来创建,类似源码的版本控制。
三种用法:
Dockerfile 中只能有一个 CMD 指令,如果有多个只有最后一个会生效。
CMD 的主要目的是在启动容器时提供一个默认的命令执行选项。
EXPOSE [/...]
EXPOSE 指令告诉 Docker 容器运行时监听的端口。还可以指定监听 TCP 或 UDP,默认为 TCP。还需要在 docker run 时带上 -p 选项映射端口。
ENV
ENV = ...
ENV 指令设置环境变量。
两种用法:
ADD 指令从 src 复制文件并添加到镜像的文件系统中。
两种用法:
COPY 指令从 src 复制文件并添加到镜像的文件系统中。 用法和 ADD相同,唯一的不同是不能指定远程文件 URL。
两种用法:
下一篇:MySQL的备份