指令 | 语法 | 说明 |
---|---|---|
FROM | FROM <image>:<tag> | 指明构建的新镜像是来自于哪个基础镜像,如果没有选择tag ,那么默认值为latest |
MAINTAINER | MAINTAINER <name> | 指明镜像维护者及其联系方式(一般是邮箱地址)。官方说明已过时,推荐使用LABEL |
LABEL | LABEL <key>=<value> ... | 功能是为镜像指定标签。也可以使用LABEL 来指定镜像作者 |
RUN | RUN <command> | 构建镜像时运行的Shell 命令,比如构建的新镜像中我们想在/usr/local 目录下创建一个java 目录 |
ADD | ADD <src>... <dest> | 拷贝文件或目录到镜像中。src 可以是一个本地文件,还可以是一个url 。然后自动下载和解压 |
COPY | COPY <src>... <dest> | 拷贝文件或目录到镜像中。用法同 ADD,只是不支持自动下载和解压 |
EXPOSE | EXPOSE <port> [<port>/<protocol>...] | 暴露容器运行时的监听端口给外部,可以指定端口是监听 TCP 还是 UDP,如果未指定协议,则默认为 TCP |
ENV | ENV <key>=<value> ... | 设置容器内环境变量 |
CMD | CMD ["executable","param1","param2"] | 启动容器时执行的Shell 命令。在Dockerfile 中只能有一条CMD 指令。如果设置了多条CMD ,只有最后一条会生效 |
ENTRYPOINT | ENTRYPOINT ["executable", "param1", "param2"] | 启动容器时执行的 Shell 命令,同 CMD 类似,不会被 docker run 命令行指定的参数所覆盖,如果设置了多条ENTRYPOINT ,只有最后一条会生效 |
WORKDIR | WORKDIR param | 为 RUN、CMD、ENTRYPOINT 以及 COPY 和 AND 设置工作目录 |
VOLUME | VOLUME ["param"] | 指定容器挂载点到宿主机自动生成的目录或其他容器。一般的使用场景为需要持久化存储数据时 |
Dockerfile 常用指令
最新推荐文章于 2024-05-14 15:51:31 发布