
如果你使用 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镜像集成了OPAM(OCaml包管理器),专注于为CI(持续集成)环境提供OCaml项目的自动化构建能力。OPAM作为OCaml生态的核心依赖管理工具,能够高效处理OCaml项目的依赖解析、版本控制和环境隔离,而本镜像通过预配置OPAM及基础构建工具,简化了OCaml项目在CI流程中的依赖管理和构建流程,支持快速集成到各类CI/CD管道。
gcc、make、curl等),满足OCaml项目编译和测试需求。通过以下命令启动镜像并进入交互式终端,可用于本地调试或手动构建OCaml项目:
bash# 挂载本地项目目录并启动镜像 docker run --rm -it -v $(pwd):/project opam-ci-image bash # 在容器内初始化OPAM并构建项目 opam init -y # 初始化OPAM环境(首次使用需执行) cd /project # 进入挂载的项目目录 opam install --deps-only . # 安装项目依赖 opam exec -- dune build # 使用项目构建工具(如dune)执行构建
GitHub Actions配置
在项目根目录创建.github/workflows/ci.yml,集成镜像至GitHub Actions:
yamlname: OCaml CI on: [push, pull_request] jobs: build: runs-on: ubuntu-latest container: image: opam-ci-image steps: - name: Checkout code uses: actions/checkout@v4 - name: Cache OPAM dependencies uses: actions/cache@v3 with: path: ~/.opam key: ${{ runner.os }}-opam-${{ hashFiles('*.opam') }} restore-keys: | ${{ runner.os }}-opam- - name: Initialize OPAM and install dependencies run: | opam init -y --disable-sandboxing # 禁用沙箱以适配CI环境 opam install --deps-only -y . - name: Build project run: opam exec -- dune build - name: Run tests run: opam exec -- dune runtest
GitLab CI配置
在项目根目录创建.gitlab-ci.yml,配置GitLab CI流程:
yamlstages: - build - test variables: OPAM_CACHE_DIR: "$CI_PROJECT_DIR/.opam-cache" cache: paths: - $OPAM_CACHE_DIR build-and-test: stage: build image: opam-ci-image script: - mkdir -p $OPAM_CACHE_DIR - ln -sf $OPAM_CACHE_DIR ~/.opam # 绑定缓存目录至OPAM根目录 - opam init -y --disable-sandboxing - opam install --deps-only -y . - opam exec -- dune build - opam exec -- dune runtest
镜像支持通过环境变量自定义行为,常用配置如下:
| 环境变量 | 说明 | 示例值 |
|---|---|---|
OCAML_VERSION | 指定默认OCaml编译器版本(需OPAM支持) | 4.14.1、5.0.0 |
OPAM_DISABLE_SANDBOXING | 设置为1禁用OPAM沙箱(CI环境推荐) | 1 |
OPAM_ROOT | 自定义OPAM根目录路径(用于缓存或持久化) | /ci-cache/.opam |
OPAM_DEPEXT_FLAGS | 传递给opam depext的额外参数(如-u升级系统依赖) | -u -y |
~/.opam),避免重复下载依赖,大幅缩短构建时间。--disable-sandboxing或OPAM_DISABLE_SANDBOXING=1禁用OPAM沙箱。libssl),可通过opam depext <package>自动安装,需确保CI环境允许系统包管理命令(如apt、yum)执行。opam switch create <version>可创建指定OCaml版本的环境,例如opam switch create 5.1.0切换至OCaml 5.1.0。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务