
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
该镜像提供了一种无需配置专用服务器即可构建RPM包的简便方法。它基于Fedora 22发行版构建,包含Python脚本封装rpmbuild和https://fedoraproject.org/wiki/Mock%E5%B7%A5%E5%85%B7%EF%BC%8C%E5%9C%A8chroot%E9%9A%94%E7%A6%BB%E7%8E%AF%E5%A2%83%E4%B8%AD%E7%94%9F%E6%88%90%E5%B9%B2%E5%87%80%E7%9A%84RPM%E5%8C%85%E3%80%82%E5%AE%B9%E5%99%A8%E9%9C%80%E4%BB%A5**%E7%89%B9%E6%9D%83%E6%A8%A1%E5%BC%8F**%E8%BF%90%E8%A1%8C%E3%80%82
至少需通过SPECFILE环境变量指定RPM spec文件:
console# docker run -e SPECFILE=https://raw.githubusercontent.com/open-io/rpm-specfiles/master/json-c/json-c.spec --privileged=true --rm openio/rpmbuild
默认发行版为epel-7-x86_64,可通过DISTRIBUTION变量选择其他版本:
console# docker run -e DISTRIBUTION=fedora-22-x86_64 -e SPECFILE=https://raw.githubusercontent.com/open-io/rpm-specfiles/master/json-c/json-c.spec --privileged=true --rm openio/rpmbuild
支持将SPECFILE设为GIT仓库地址(默认master分支):
consoledocker run -e DISTRIBUTION=fedora-22-x86_64 -e SPECFILE=http://pkgs.fedoraproject.org/git/bash.git --privileged=true --rm openio/rpmbuild
可指定分支或提交:
consoledocker run -e DISTRIBUTION=fedora-22-x86_64 -e SPECFILE=http://pkgs.fedoraproject.org/git/bash.git?branch=f22 --privileged=true --rm openio/rpmbuild docker run -e DISTRIBUTION=fedora-22-x86_64 -e SPECFILE=http://pkgs.fedoraproject.org/git/bash.git?commit=469c21de51421a30eb99aad8a02148043fcdccce --privileged=true --rm openio/rpmbuild
可指定HTTP或GIT方式的替代源码:
consoledocker run -e DISTRIBUTION=fedora-22-x86_64 -e SPECFILE=http://pkgs.fedoraproject.org/git/bash.git?commit=469c21de51421a30eb99aad8a02148043fcdccce -e SOURCES="ftp://ftp.gnu.org/gnu/bash/bash-4.3.tar.gz" --privileged=true --rm openio/rpmbuild
通过缓存容器保留Mock缓存加速构建:
console# docker run -ti -v /var/cache/mock --name rpmbuild-cache-container alpine true # docker run -e SPECFILE=https://raw.githubusercontent.com/open-io/rpm-specfiles/master/json-c/json-c.spec --privileged=true --rm --volumes-from rpmbuild-cache-container openio/rpmbuild
挂载/var/lib/mock到主机获取结果:
console# mkdir -pv local/lib/mock # docker run -e SPECFILE=https://raw.githubusercontent.com/open-io/rpm-specfiles/master/json-c/json-c.spec --privileged=true -v "$(pwd)"/local/lib/mock:/var/lib/mock --rm openio/rpmbuild
支持SCP或HTTP上传:
console# docker run -e UPLOAD_RESULT="scp://host/remote_path/?port=22&username=user&password=passwd" -e SPECFILE=https://raw.githubusercontent.com/open-io/rpm-specfiles/master/python-oiopy/python-oiopy.spec --privileged=true -v "$(pwd)"/local/lib/mock:/var/lib/mock --rm openio/rpmbuild
HTTP上传到oiorepo应用示例:
consoleOIO_REPO_HOST=`ip -4 address show dev docker0 | awk '/inet / {print substr($2,0,index($2,"/") - 1)}'` # docker run -e UPLOAD_RESULT="http://${OIO_REPO_HOST}:5000/package" \ -e OIO_REPO_HOST="mirror2.openio.io" \ -e OIO_PROD="sds" \ -e OIO_PROD_VER="16.10" \ -e OIO_DISTRO="centos" \ -e OIO_DISTRO_VER="7" \ -e OIO_ARCH="x86_64" \ -e OIO_COMPANY="openio" \ -e OIO_PACKAGE="python-oiopy" \ --privileged=true \ -v "$(pwd)"/local/lib/mock:/var/lib/mock \ --rm \ openio/rpmbuild
包含的脚本遵循http://www.apache.org/licenses/LICENSE-2.0%E5%8D%8F%E8%AE%AE%E3%80%82
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务