Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。通过定义一系列命令和参数,Dockerfile 指导 Docker 构建一个自定义的镜像。本文通过示例的方式展示一些Dockerfile的用法。
多阶段构建
多阶段构建是Docker 17.05版本引入的一项功能,旨在简化构建过程并减少镜像的体积。通过在一个Dockerfile中使用多个FROM指令,可以将构建过程分为多个阶段,每个阶段使用不同的基础镜像,并且可以在不同阶段之间复制文件。
基础用法
使用下述的Dockerfile文件来构建镜像,生成的镜像以nginx:stable-alpine3.21-perl为基础镜像,其目录/usr/share/nginx/html的内容来源于mkdir /app && echo "hello world" > /app/index.html。
FROM busybox as builder
RUN mkdir /app && echo "hello world" > /app/index.html
FROM nginx:stable-alpine3.21-perl AS mobile
COPY --from=builder /app /usr/share/nginx/html
文章评论