
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Dockerfile是一种用于自动化构建Docker镜像的文本文件,通过一系列预定义指令(Instruction)描述镜像的构建过程,包括基础镜像选择、依赖安装、文件复制、环境配置及启动命令等。它将镜像构建逻辑代码化,确保构建过程可重复、可追溯,是Docker生态中镜像开发与分发的基础组件。
FROM、RUN、COPY等)将镜像构建步骤转化为可执行代码,消除手动构建的随机性。ARG、ENV等指令注入动态参数,适应不同构建环境需求。FROM指定基础镜像)、操作指令(RUN执行命令、COPY复制文件)、配置指令(ENV设置环境变量、EXPOSE声明端口)及启动指令(CMD、ENTRYPOINT定义容器启动行为)。Dockerfile由一行行指令组成,指令不区分大小写,但惯例使用大写以区分参数。注释以#开头。基本结构示例:
dockerfile# 基础镜像 FROM [镜像名称]:[标签] # 设置工作目录 WORKDIR /app # 复制文件 COPY . . # 安装依赖 RUN apt-get update && apt-get install -y [依赖包] # 设置环境变量 ENV APP_PORT=8080 # 暴露端口 EXPOSE 8080 # 启动命令 CMD ["python", "app.py"]
| 指令 | 作用 | 示例 |
|---|---|---|
FROM | 指定基础镜像(必须为第一条非注释指令) | FROM python:3.9-slim |
WORKDIR | 设置后续指令的工作目录 | WORKDIR /app |
COPY | 复制本地文件/目录到镜像中 | COPY requirements.txt . |
ADD | 复制文件(支持URL和压缩包自动解压) | ADD https://example.com/file.tar.gz /tmp |
RUN | 执行命令并提交结果为新层 | RUN pip install -r requirements.txt |
ENV | 设置环境变量(容器运行时可继承) | ENV LANG=en_US.UTF-8 |
EXPOSE | 声明容器运行时监听的端口(仅文档作用) | EXPOSE 80/tcp 443/udp |
CMD | 容器启动命令(可被docker run参数覆盖) | CMD ["nginx", "-g", "daemon off;"] |
ENTRYPOINT | 容器入口点(不可被轻易覆盖,常与CMD配合) | ENTRYPOINT ["java", "-jar"] |
ARG | 构建时变量(仅在构建阶段有效) | ARG VERSION=1.0 && RUN echo $VERSION |
在Dockerfile所在目录执行以下命令构建镜像:
bashdocker build -t [镜像名称]:[标签] [Dockerfile所在目录]
-t:指定镜像名称和标签(格式为name:tag,如myapp:v1.0)webapp:latest镜像bashdocker build -t webapp:latest .
RUN指令减少层数(如RUN apt-get update && apt-get install -y pkg && rm -rf /var/lib/apt/lists/*)FROM指令分离构建环境与运行环境,减小最终镜像体积:
dockerfile# 构建阶段 FROM maven:3.8 AS builder WORKDIR /app COPY pom.xml . RUN mvn dependency:go-offline COPY src ./src RUN mvn package -DskipTests # 运行阶段 FROM openjdk:11-jre-slim COPY --from=builder /app/target/*.jar app.jar CMD ["java", "-jar", "app.jar"]
.dockerignore文件:排除不需要复制到镜像的文件(如.git、node_modules),减少上下文体积。以一个简单Python应用为例:
创建Dockerfile:
dockerfileFROM python:3.9-slim WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY app.py . EXPOSE 5000 CMD ["python", "app.py"]
构建镜像:
bashdocker build -t python-app:v1 .
运行容器:
bashdocker run -d -p 5000:5000 --name my-python-app python-app:v1
docker run -e或Docker Secrets注入。nginx、python),确保安全性和稳定性。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。



来自真实用户的反馈,见证轩辕镜像的优质服务