
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Docker镜像,用于导出Godot Engine游戏并部署到GitLab/GitHub Pages和Itch.io,支持通过GitLab CI和GitHub Actions实现自动化流程。
!godot-ci
https://hub.docker.com/r/barichello/godot-ci/
本项目包含 .gitlab-ci.yml 和 .github/workflows/godot-ci.yml 作为配置参考。
有关使用此模板的实际项目、示例和教程,请查看以下列表:
若要构建启用Mono的Godot项目,需在 .gitlab-ci.yml(GitLab)或 godot-ci.yml(GitHub)中将镜像标签从 barichello/godot-ci:VERSION 更改为 barichello/godot-ci:mono-VERSION。例如:barichello/godot-ci:mono-3.2.1。
构建调试版本(debug.keystore),可使用 .gitlab-ci.yml 文件中的 android_debug 任务示例。
若要使用自定义密钥库导出Android版本,步骤如下:
base64 release.keystore -w 0certutil -encodehex -f release.keystore encoded.txt 0x40000001SECRET_RELEASE_KEYSTORE_BASE64(类型为变量)添加。SECRET_RELEASE_KEYSTORE_USER(类型为变量),值为密钥库别名。SECRET_RELEASE_KEYSTORE_PASSWORD(类型为变量),值为密钥库密码。.gitlab-ci.yml 文件中的 android 任务示例。有关GDNative C++编译自动化,可参考基于此仓库的 https://github.com/2shady4u/godot-cpp-ci 仓库。
需先编译包含模块的Godot引擎。可参考Calinou的 godot-builds-ci 仓库实现Godot构建自动化。
之后,使用自定义构建照常导出项目。可参考Greenfox的 指南 了解如何将自定义Godot构建用于自动化导出。
暂不支持。Xcode项目自动化虽可行但复杂,且GitHub Actions最近才支持macOS运行器,未来将逐步支持。
以下是各支持的CI服务、模板任务及实际示例的对应关系。
| CI服务 | 模板 | 示例 |
|---|---|---|
| GitLab CI | https://github.com/aBARICHELLO/godot-ci/blob/master/.gitlab-ci.yml#L16-L58 / https://github.com/aBARICHELLO/godot-ci/blob/master/.gitlab-ci.yml#L60-L76 / https://github.com/aBARICHELLO/godot-ci/blob/master/.gitlab-ci.yml#L78-L91 / https://github.com/aBARICHELLO/godot-ci/blob/master/.gitlab-ci.yml#L93-L113 | GitLab CI流水线 |
| GitHub Actions | https://github.com/aBARICHELLO/godot-ci/blob/master/.github/workflows/godot-ci.yml#L8-99 | https://github.com/aBARICHELLO/godot-ci/actions |
首先,从用作模板的 .yml 文件(.gitlab-ci.yml 或 .github/workflows/godot-ci.yml)中移除未使用的任务/阶段。
然后,根据所选CI和任务,在配置面板中添加以下环境变量:
https://github.com/<用户名>/<项目名>/settings/secretshttps://gitlab.com/<用户名>/<仓库名>/settings/ci_cd| 变量 | 描述 | 示例 |
|---|---|---|
| REMOTE_URL | 托管Web导出的git远程地址(需包含部署/个人访问令牌) | https://<github用户名>:<部署令牌>@github.com/<用户名>/<仓库>.git |
| GIT_EMAIL | 提交到 gh-pages 分支的Git*** | email@example.com |
| GIT_USERNAME | 提交到 gh-pages 分支的用户名 | username |
其他变量由 gitlab-runner 自动设置,详见 预定义变量文档。
部署到Itch.io通过 Butler 实现。所需变量:
| 变量 | 描述 | 示例 |
|---|---|---|
| ITCHIO_USERNAME | Itch.io用户名(个人页面地址:https://<用户名>.itch.io) | username |
| ITCHIO_GAME | 游戏名称(游戏地址:https://<用户名>.itch.io/<游戏名>) | game |
| BUTLER_API_KEY | Itch.io API密钥(用于Butler认证),在GitLab CI中需设为“Masked”以保密 | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
export_presets.cfg 中的导出名称是否与CI脚本中使用的名称匹配。test-project 模板),部分命令可能因路径错误无法运行。Greenfox的 godot-build-automation 仓库同样用于Godot导出自动化,内容丰富。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务