
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像是一个专为CI/CD流程设计的Docker镜像,集成了Docker-in-Docker(dind)、Docker Buildx及常用开发工具(如git、curl、jq等)。其核心用途是在CI环境中提供完整的Docker构建能力,支持多平台镜像构建、容器化应用自动化部署等场景,简化CI流程中的环境配置。
适用于CI流程中触发自动构建Docker镜像(如代码提交后触发构建),无需依赖外部Docker环境。
通过Buildx支持跨架构镜像构建(如x86_64、arm64、ppc64le等),满足多硬件环境部署需求。
需在CI流程中直接运行Docker命令(如镜像推送、容器运行测试)时,可作为执行环境使用。
4.1.1 启动镜像(dind模式)
由于需运行Docker守护进程,需使用--privileged权限(注意:生产环境需评估安全风险):
bashdocker run -d \ --name ci-dind \ --privileged \ -v /var/lib/docker \ # 可选:持久化Docker数据 sickhub/docker-ci-images
4.1.2 进入容器执行命令
bashdocker exec -it ci-dind sh # 验证Docker环境 docker --version # 验证Buildx docker buildx version # 验证工具 git --version && curl --version && jq --version
4.2.1 初始化Buildx构建器
bash# 进入容器后执行 docker buildx create --name multi-platform-builder --use docker buildx inspect --bootstrap # 启动构建器(首次需下载依赖)
4.2.2 构建并推送多平台镜像
bash# 示例:构建并推送到Docker Hub(需提前登录docker login) docker buildx build \ --platform linux/amd64,linux/arm64 \ -t username/your-image:latest \ --push \ /path/to/Dockerfile
4.3.1 GitLab CI配置(.gitlab-ci.yml)
yamlstages: - build build-image: stage: build image: sickhub/docker-ci-images services: - docker:dind # 若需独立dind服务,可配合使用(根据GitLab Runner配置调整) variables: DOCKER_DRIVER: overlay2 DOCKER_TLS_CERTDIR: "" # 禁用TLS(简化本地通信) script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker buildx create --use - docker buildx build --platform linux/amd64,linux/arm64 -t $CI_REGISTRY_IMAGE:latest --push .
4.3.2 GitHub Actions配置(.github/workflows/build.yml)
yamlname: Build Multi-Platform Image on: [push] jobs: build: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 # 或直接使用镜像内置buildx with: driver: docker-container # 使用容器化驱动,依赖dind - name: Login to Docker Hub uses: docker/login-action@v3 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Build and push uses: docker/build-push-action@v5 with: context: . push: true tags: username/your-image:latest platforms: linux/amd64,linux/arm64 # 若直接使用本镜像,可替换为: # image: sickhub/docker-ci-images # entrypoint: ["docker", "buildx", "build"]
本镜像未定义强制环境变量,可根据需求通过-e参数传递自定义变量,常用场景包括:
DOCKER_HOST:指定Docker守护进程地址(默认本地unix:///var/run/docker.sock);BUILDX_PLATFORMS:默认多平台列表(如linux/amd64,linux/arm64);GIT_CONFIG_USER_NAME/GIT_CONFIG_USER_EMAIL:配置git提交用户信息。--privileged模式会赋予容器极高权限,可能导致主机安全风险,生产环境建议通过非特权容器+外部Docker守护进程(如挂载/var/run/docker.sock)替代dind。HTTP_PROXY等环境变量配置网络代理。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务