专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像 官方专业版轩辕镜像 官方专业版官方专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 1072982923

smartrent/elixir-ci Docker 镜像 - 轩辕镜像

elixir-ci
smartrent/elixir-ci
smartrent
用于持续集成环境中运行和测试Elixir应用的Docker镜像。
0 次下载
💣 CI/CD 卡在拉镜像?问题不在代码,在镜像源
中文简介版本下载
💣 CI/CD 卡在拉镜像?问题不在代码,在镜像源

elixir-ci-docker 镜像文档

1. 镜像概述

elixir-ci-docker 是一个专为持续集成(CI)流程设计的 Docker 镜像,主要用于在 CI 环境中自动化执行 Elixir 应用的构建、测试及相关任务。该镜像预配置了 Elixir 开发和测试所需的核心工具链,确保在 CI 流程中能够快速、一致地运行 Elixir 项目的构建和验证步骤。

镜像构建及版本管理托管于 DockerHub,地址:[***]

2. 核心功能与特性

  • 完整的 Elixir 运行环境:内置指定版本的 Elixir 解释器及标准库,满足 Elixir 应用运行需求。
  • Mix 工具链集成:包含 Elixir 项目构建工具 Mix,支持依赖管理(mix deps.get)、项目编译(mix compile)、测试执行(mix test)等核心操作。
  • Hex 包管理器:预安装 Hex(Elixir 包管理工具),支持自动拉取项目依赖。
  • CI 环境适配:优化非交互式运行配置,支持在 CI 系统(如 GitLab CI、GitHub Actions、Jenkins 等)中无交互执行任务。
  • 版本稳定性:通过 DockerHub 自动化构建流程维护,确保镜像版本与 Elixir 官方版本同步,减少环境差异导致的构建失败。

3. 使用场景与适用范围

适用场景
  • CI/CD 流程中的构建环节:在 CI 管道中自动执行 Elixir 项目的依赖安装、代码编译。
  • 自动化测试执行:在 CI 环境中运行单元测试、集成测试等,生成测试报告。
  • 多环境一致性验证:确保开发、测试、CI 环境中 Elixir 版本及依赖一致,避免“在我机器上能运行”问题。
适用范围
  • 所有基于 Elixir 开发的应用项目(包括 Phoenix 框架应用)。
  • 需在 CI/CD 平台(如 GitHub Actions、GitLab CI/CD、Jenkins、Travis CI 等)中自动化执行构建、测试步骤的场景。

4. 使用方法与配置说明

4.1 镜像拉取

从 DockerHub 拉取最新版本镜像:

bash
docker pull smartrent/elixir-ci:latest

如需指定版本,可通过标签拉取(具体标签参见 DockerHub 仓库):

bash
docker pull smartrent/elixir-ci:1.15.7  # 示例:拉取 Elixir 1.15.7 版本镜像
4.2 基本使用(本地模拟 CI 环境)

在本地环境中挂载 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:依次执行依赖安装和测试命令。

5. Docker 部署示例

5.1 基本 docker run 命令示例(CI 环境执行测试)

在 CI 脚本中使用以下命令执行项目测试:

bash
docker 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  # 执行测试并生成覆盖率报告
5.2 docker-compose 配置示例(本地开发/测试)

创建 docker-compose.yml 文件,用于本地模拟 CI 环境:

yaml
version: '3.8'
services:
  elixir-ci:
    image: smartrent/elixir-ci:latest
    volumes:
      - ./:/app  # 挂载本地项目目录
    working_dir: /app
    environment:
      - MIX_ENV=test  # 测试环境
      - HEX_MIRROR=[***]  # 可选:指定 Hex 镜像源(加速依赖拉取)
    command: sh -c "mix deps.get && mix compile && mix test"

启动容器执行测试:

bash
docker-compose up
5.3 CI 配置文件示例(GitLab CI/CD)

在项目根目录创建 .gitlab-ci.yml,使用该镜像定义测试阶段:

yaml
stages:
  - test

elixir-test:
  stage: test
  image: smartrent/elixir-ci:latest
  script:
    - mix deps.get --only test  # 拉取测试环境依赖
    - mix test --trace  # 执行测试并输出详细日志
  cache:
    paths:
      - deps/  # 缓存依赖,加速后续构建
      - _build/

6. 配置参数与环境变量

环境变量说明默认值示例值
MIX_ENV指定 Mix 运行环境(开发/测试/生产)testdev、prod
HEX_MIRRORHex 包管理器镜像源(加速依赖拉取)[***][***]
TEST_COMMAND自定义测试命令(覆盖默认 mix test)mix testmix test --no-start
ELIXIR_VERSION容器内 Elixir 版本(镜像标签指定)镜像内置版本1.15.7

7. 镜像构建与更新

  • 构建地址:镜像通过 DockerHub 自动构建,构建状态及历史版本可在 DockerHub 仓库 查看。
  • 更新策略:当 Elixir 官方发布新版本或镜像依赖(如 Erlang/OTP 版本)更新时,DockerHub 会自动触发构建并更新 latest 标签及版本标签。
  • 版本兼容:建议在 CI 配置中指定具体版本标签(如 1.15.7),避免因 latest 标签自动更新导致环境变更。
查看更多 elixir-ci 相关镜像 →
hammercorp/elixir-ci logo
hammercorp/elixir-ci
暂无描述
50K+ pulls
上次更新:未知
duffelbot/elixir-ci logo
duffelbot/elixir-ci
暂无描述
50K+ pulls
上次更新:未知
givernycapital/elixir-ci logo
givernycapital/elixir-ci
暂无描述
10K+ pulls
上次更新:未知
elixir logo
elixir
Elixir Docker镜像是由Erlang生态系统基金会维护的官方镜像,提供动态函数式编程语言Elixir环境,支持多种版本(1.12+)、OTP版本(24-28)及架构(amd64、arm等),适用于构建可扩展、可维护的应用。
57950M+ pulls
上次更新:未知
cimg/elixir logo
cimg/elixir
CircleCI Elixir Docker便捷镜像,为Elixir项目在CircleCI平台提供预配置环境,支持高效的持续集成与部署流程。
210M+ pulls
上次更新:未知

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

Dev Containers

VS Code Dev Containers 配置

MacOS OrbStack

MacOS OrbStack 容器配置

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

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

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
smartrent/elixir-ci
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
咨询镜像拉取问题请 提交工单,官方技术交流群:1072982923
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
咨询镜像拉取问题请提交工单,官方技术交流群:
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.