
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
专为 CircleCI 设计的 MySQL Docker 镜像,专注于持续集成场景
[![CircleCI 构建状态] ]
[![软件许可证:MIT] ]
[![Docker 拉取量] ]
[![CircleCI 社区讨论] ]
[![GitHub 仓库] ]
注意:本镜像旨在替代旧版 CircleCI MySQL 镜像
circleci/mysql。
cimg/mysql 是由 CircleCI 开发的 Docker 镜像,专为持续集成构建流程设计。
CircleCI Docker 便利镜像的支持政策可参考 [CircleCI 文档] 。该政策明确了镜像的发布、更新及弃用规则。
本镜像可作为次要镜像,与 CircleCI docker 执行器配合使用。示例如下:
yamljobs: build: docker: - image: cimg/go:1.17 # 主容器:CircleCI Go 镜像 - image: cimg/mysql:8.0 # 次要容器:MySQL 镜像 steps: - checkout # 检出代码
上述示例中,主容器使用 CircleCI Go 镜像,次要容器使用 MySQL 镜像(标签 8.0 对应 MySQL 8.0 版本)。在任务步骤中,可从主容器连接到 MySQL 实例。
本镜像包含完整的 MySQL 数据库及其工具链。
旧版镜像 circleci/mysql 提供过 RAM 优化变体,但当前版本已移除。我们正在评估该变体的实际性能提升效果,若您使用过旧版镜像并能提供 RAM 变体与普通变体的构建时间对比数据,欢迎通过 GitHub Issue 反馈。
镜像标签格式如下:
cimg/mysql:<mysql-version>
其中 <mysql-version> 为 MySQL 版本号(如 8.0 对应 MySQL 8.0)。
本地构建和运行镜像需满足以下条件:
社区用户(无仓库写入权限)
--recurse-submodules 参数以拉取子模块:
bashgit clone --recurse-submodules <您的 Fork 仓库地址>
bashgit submodule update --recursive
bashgit remote add upstream [] ```
维护者(有仓库写入权限)
直接克隆仓库并拉取子模块:
bashgit clone --recurse-submodules [邮箱已删除]:CircleCI-Public/cimg-mysql.git
使用 gen-dockerfiles.sh 脚本生成指定版本的 Dockerfile。例如,生成 MySQL 8.0 的 Dockerfile:
bash./shared/gen-dockerfiles.sh 8.0
生成的文件位于 ./8.0/Dockerfile。
生成 Dockerfile 后,可本地构建并测试镜像:
bash# 构建镜像 docker build -t test/mysql:8.0 -f 8.0/Dockerfile . # 运行容器并进入交互终端 docker run -it docker.xuanyuan.run/test/mysql:8.0 bash
使用 build-images.sh 脚本批量构建镜像(需先生成 Dockerfile):
bash./build-images.sh
正式发布时,此脚本将通过 CircleCI 流水线执行,而非本地运行。
使用 release.sh 脚本简化发布流程。以发布 MySQL 9.99(示例版本)为例:
bash./shared/release.sh 9.99
该脚本会自动完成以下操作:
[release] 结尾,用于触发 CircleCI 镜像推送流程)后续步骤:
变更来源不同,整合方式也不同:
构建脚本变更
./shared 子模块的变更需在 [独立仓库] 中进行。若需同步到本镜像,需更新子模块:
bashcd shared git pull # 拉取子模块更新 cd .. git add shared git commit -m "更新子模块以支持 xxx 功能"
父镜像变更
为保证构建确定性,父镜像变更不会自动同步到现有 MySQL 镜像中。新版本 MySQL 镜像会自动继承父镜像更新。若需将父镜像变更同步到现有 MySQL 镜像,需按新版本流程重新构建并发布。
MySQL 镜像专属变更
修改本仓库的 Dockerfile.template 文件可定制 MySQL 镜像。修改后需重新生成 Dockerfile 以生效(参考「生成 Dockerfile」步骤)。
欢迎通过 [Issue] 反馈问题或提交 [Pull Request] 。贡献前建议阅读 贡献指南,了解最佳实践及团队协作规范。
.circleci/config.yml 支持的所有配置项。本仓库采用 MIT 许可证,详情见 LICENSE 文件。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 cimg/mysql 相关的常用 Docker 镜像,适用于 关系型数据库、事务处理、数据存储 等不同场景: