Dockerfile 文件详解包含所有的关键字
Dockerfile 文件是用来构建 Docker 镜像的文本文件。它包含了一系列的指令(关键字),用于描述如何构建镜像的步骤和配置。
以下是 Dockerfile 文件中常用的关键字:
-
FROM:指定基础镜像,用于构建新镜像。例如:FROM ubuntu:latest。
-
MAINTAINER:指定镜像的作者和联系方式。例如:MAINTAINER John Doe john.doe@example.com。
-
LABEL:为镜像添加元数据。例如:LABEL version="1.0"。
-
RUN:在镜像中执行命令。可以使用多个 RUN 指令来执行多个命令。例如:RUN apt-get update && apt-get install -y curl。
-
CMD:设置容器启动时执行的默认命令。只能有一个 CMD 指令。例如:CMD ["nginx", "-g", "daemon off;"]。
-
ENTRYPOINT:设置容器启动时执行的默认命令,与 CMD 类似,但不会被 docker run 命令后的参数覆盖。例如:ENTRYPOINT ["nginx", "-g", "daemon off;"]。
-
EXPOSE:指定容器监听的端口号。例如:EXPOSE 80。
-
ENV:设置环境变量。例如:ENV PATH="/usr/local/bin:${PATH}"。
-
ADD:将文件或目录复制到镜像中。例如:ADD app.tar.gz /usr/local/app。
-
COPY:将文件或目录复制到镜像中,与 ADD 类似,但不支持解压。例如:COPY app /usr/local/app。
-
VOLUME:创建一个挂载点,并将其标记为持久化卷。例如:VOLUME /data。
-
WORKDIR:设置工作目录。例如:WORKDIR /usr/local/app。
-
USER:设置镜像运行时的用户。例如:USER nginx。
-
ARG:定义构建时传递给镜像的变量。例如:ARG VERSION=1.0。
-
ONBUILD:定义触发器指令,当继承当前镜像的镜像被构建时执行。例如:ONBUILD ADD . /app。
-
STOPSIGNAL:设置容器停止时发送的信号。例如:STOPSIGNAL SIGTERM。
-
HEALTHCHECK:定义容器的健康检查命令。例如:HEALTHCHECK CMD curl -f http://localhost/ || exit 1。
这些关键字可以按照需要组合使用,构建出符合需求的镜像。注意,Dockerfile 文件中的指令是按照顺序执行的,可以根据需要合理安排指令的顺序
原文地址: https://www.cveoy.top/t/topic/iQxE 著作权归作者所有。请勿转载和采集!