Dockerfile 是一个文本文件,用于自动化 Docker 镜像的构建过程。这里是一个简单的 Dockerfile 编写步骤,以及一个基本的例子:
Dockerfile 基本结构
- FROM: 指定基础镜像。
- RUN: 执行命令。
- COPY / ADD: 复制文件或目录到镜像中。
- CMD: 设置容器启动后默认执行的命令。
- ENTRYPOINT: 设置容器启动时运行的命令。
- EXPOSE: 声明端口。
- ENV: 设置环境变量。
- WORKDIR: 指定工作目录。
- USER: 指定运行用户。
- VOLUME: 创建挂载点。
示例 Dockerfile
假设你正在创建一个简单的 Python 应用的 Docker 镜像,你的应用需要 Flask 库。
Dockerfile
# 使用官方 Python 运行时作为父镜像
FROM python:3.8-slim
# 设置工作目录为 /app
WORKDIR /app
# 将当前目录内容复制到位于 /app 中的容器中
COPY . /app
# 安装 requirements.txt 中指定的任何所需包
RUN pip install --trusted-host pypi.python.org -r requirements.txt
# 使端口 80 可供此容器外的环境使用
EXPOSE 80
# 定义环境变量
ENV NAME World
# 在容器启动时运行 app.py
CMD ["python", "app.py"]
这个 Dockerfile 从一个 Python 3.8 的官方镜像开始,设置工作目录,复制应用文件,安装依赖,暴露端口,设置环境变量,并指定容器启动时执行的命令。
根据你的应用需求和环境,你可能需要调整 Dockerfile 中的命令和参数。