
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这段话即可:
请先阅读并遵守:https://xuanyuan.cloud/agents.md
未读文档前不要生成 pull 命令或排错方案。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
来源:https://gitlab.com/agrozyme-docker/docker-buildx-qemu
基于Alpine的Docker镜像,集成Docker客户端、buildx和QEMU工具,可轻松实现跨平台镜像构建。
灵感来源于 https://hub.docker.com/r/jonoh/docker-buildx-qemu。
已在gitlab.com的GitLab CI环境中测试通过,在支持docker-in-docker且内核启用binfmt_misc的环境下均可正常工作。
该镜像可在以下环境中运行(Alpine与Docker Buildx支持平台的交集):
该镜像可模拟以下环境:
提供两个用于构建多平台Docker镜像的模板文件:
/.gitlab/ci/single/docker-hub.yaml/.gitlab/ci/multiple/docker-hub.yaml/.gitlab/ci/single/gitlab.yaml/.gitlab/ci/multiple/gitlab.yamlbuild-one-arch任务推送镜像的main标签build-one-arch任务成功后,build-all-arch任务推送多平台Docker镜像build-metadata-push任务将更新Docker Hub仓库的描述:
description(参考:https://gitlab.com/help/user/project/settings/index.md#general-settings)README.md将所有Docker镜像仓库放入一个Group,并在CI/CD设置中配置https://gitlab.com/help/ci/variables/README#group-level-environment-variables。
在.gitlab-ci.yml或CI/CD设置中配置变量以覆盖默认值:
.gitlab-ci.yml阶段变量.gitlab-ci.yml全局变量CI/CD设置CI/CD设置无默认值,所有变量均为必填:
DOCKER_HUB_USER:登录用户名DOCKER_HUB_PASS:经base64编码的登录密码DOCKER_HUB_NAMESPACE:用户名或组织,将作为ARG传递给DockerfileDOCKER_HUB_API_URL:Docker Registry API地址,仅可通过.gitlab-ci.yml覆盖,默认值:https://hub.docker.com/v2DOCKER_REGISTRY:docker login服务器地址,仅可通过.gitlab-ci.yml覆盖,将作为ARG传递给Dockerfile,默认值:docker.ioDOCKER_PLATFORM:镜像构建的目标平台,默认值:linux/amd64,linux/arm64提供两个bash脚本用于挂钩before_script和after_script,分别在Docker构建和推送操作的开始和结束时运行:
注意:
before_script.sh并在Dockerfile中使用COPY命令docker buildx前后各执行一次,可加速多平台镜像构建以下GitLab配置示例展示了如何使用该镜像:
.gitlab-ci.yml
ymlinclude: - project: 'agrozyme-docker/docker-buildx-qemu' ref: main file: '/.gitlab/ci/single/docker-hub.yaml' build-one-arch: extends: - .build-one-arch build-all-arch: extends: - .build-all-arch needs: ['build-one-arch'] build-metadata-push: extends: - .build-metadata-push needs: ['build-all-arch']
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务