
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
elixir-ci-docker 是一个专为持续集成(CI)流程设计的 Docker 镜像,主要用于在 CI 环境中自动化执行 Elixir 应用的构建、测试及相关任务。该镜像预配置了 Elixir 开发和测试所需的核心工具链,确保在 CI 流程中能够快速、一致地运行 Elixir 项目的构建和验证步骤。
镜像构建及版本管理托管于 DockerHub,地址:https://hub.docker.com/repository/docker/smartrent/elixir-ci
mix deps.get)、项目编译(mix compile)、测试执行(mix test)等核心操作。从 DockerHub 拉取最新版本镜像:
bashdocker pull smartrent/elixir-ci:latest
如需指定版本,可通过标签拉取(具体标签参见 DockerHub 仓库):
bashdocker pull smartrent/elixir-ci:1.15.7 # 示例:拉取 Elixir 1.15.7 版本镜像
在本地环境中挂载 Elixir 项目目录,执行测试命令(模拟 CI 流程):
bash# 假设项目代码位于当前目录下的 ./my_elixir_app docker run --rm -v $(pwd)/my_elixir_app:/app -w /app smartrent/elixir-ci:latest \ sh -c "mix deps.get && mix test"
-v $(pwd)/my_elixir_app:/app:将本地项目目录挂载到容器内 /app 路径。-w /app:指定容器工作目录为 /app(项目根目录)。mix deps.get && mix test:依次执行依赖安装和测试命令。docker run 命令示例(CI 环境执行测试)在 CI 脚本中使用以下命令执行项目测试:
bashdocker run --rm \ -v $CI_PROJECT_DIR:/app \ # 挂载 CI 项目目录(变量名因 CI 平台而异,如 GitHub Actions 为 $GITHUB_WORKSPACE) -w /app \ -e MIX_ENV=test \ # 指定 Mix 环境为测试环境 smartrent/elixir-ci:latest \ mix test --cover # 执行测试并生成覆盖率报告
docker-compose 配置示例(本地开发/测试)创建 docker-compose.yml 文件,用于本地模拟 CI 环境:
yamlversion: '3.8' services: elixir-ci: image: smartrent/elixir-ci:latest volumes: - ./:/app # 挂载本地项目目录 working_dir: /app environment: - MIX_ENV=test # 测试环境 - HEX_MIRROR=https://hex.pm # 可选:指定 Hex 镜像源(加速依赖拉取) command: sh -c "mix deps.get && mix compile && mix test"
启动容器执行测试:
bashdocker-compose up
在项目根目录创建 .gitlab-ci.yml,使用该镜像定义测试阶段:
yamlstages: - test elixir-test: stage: test image: smartrent/elixir-ci:latest script: - mix deps.get --only test # 拉取测试环境依赖 - mix test --trace # 执行测试并输出详细日志 cache: paths: - deps/ # 缓存依赖,加速后续构建 - _build/
| 环境变量 | 说明 | 默认值 | 示例值 |
|---|---|---|---|
MIX_ENV | 指定 Mix 运行环境(开发/测试/生产) | test | dev、prod |
HEX_MIRROR | Hex 包管理器镜像源(加速依赖拉取) | https://hex.pm | https://mirrors.tuna.tsinghua.edu.cn/hex |
TEST_COMMAND | 自定义测试命令(覆盖默认 mix test) | mix test | mix test --no-start |
ELIXIR_VERSION | 容器内 Elixir 版本(镜像标签指定) | 镜像内置版本 | 1.15.7 |
latest 标签及版本标签。1.15.7),避免因 latest 标签自动更新导致环境变更。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。




来自真实用户的反馈,见证轩辕镜像的优质服务