
该Docker镜像用于在自定义环境中运行GitHub Actions工作流,封装了GitHub Actions Runner核心组件,支持本地、私有环境或隔离网络中执行GitHub Actions作业,无需依赖GitHub***托管的公共Runner。镜像提供标准化的Runner运行环境,简化自定义Runner的部署与管理,适用于CI/CD流水线集成、本地调试及安全合规场景。
repo 和 workflow 权限(创建路径:GitHub账号 → Settings → Developer settings → Personal access tokens → Generate new token)从Docker Registry拉取镜像(以镜像名称github-actions-runner为例,实际需替换为具体镜像源):
bashdocker pull [镜像源地址]/github-actions-runner:latest
若使用私有仓库,需先登录:
docker login [私有仓库地址]
通过docker run命令启动Runner,核心参数包括环境变量(认证与配置)和数据卷(持久化配置):
bashdocker run -d \ --name github-runner \ -e GITHUB_REPOSITORY="owner/repo" \ # 目标仓库(格式:用户名/仓库名) -e GITHUB_TOKEN="ghp_xxx" \ # GitHub PAT(需repo、workflow权限) -e RUNNER_NAME="my-local-runner" \ # Runner名称(自定义) -e RUNNER_LABELS="local,linux,x64" \ # Runner标签(用于工作流选择,逗号分隔) -v /path/on/host/runner-data:/runner \ # 挂载Runner配置目录(持久化注册信息) --restart unless-stopped \ # 异常退出后自动重启 [镜像源地址]/github-actions-runner:latest
docker ps | grep github-runnerdocker logs -f github-runner(可查看注册过程、作业执行日志)镜像通过环境变量控制Runner行为,以下为核心变量说明:
| 环境变量名 | 必选 | 描述 | 示例值 |
|---|---|---|---|
GITHUB_REPOSITORY | 是 | 目标GitHub仓库(格式:owner/repo,支持组织级Runner:org/组织名) | my-org/my-project |
GITHUB_TOKEN | 是 | GitHub Personal Access Token,用于注册Runner | ghp_Abc123...(需保密) |
RUNNER_NAME | 否 | Runner名称,默认自动生成(runner-{随机字符串}) | prod-runner-01 |
RUNNER_LABELS | 否 | Runner标签(逗号分隔),用于工作流runs-on字段匹配 | local,arm64,high-memory |
RUNNER_WORKDIR | 否 | 作业执行工作目录,默认/_work | /custom-workdir |
RUNNER_GROUP | 否 | Runner所属组(仅组织级Runner需配置) | production-runners |
HTTP_PROXY/HTTPS_PROXY | 否 | 网络代理配置(适用于隔离环境) | [***] |
NO_PROXY | 否 | 不经过代理的域名/IP(逗号分隔) | github.com,192.168.1.0/24 |
通过docker-compose.yml管理Runner部署,支持多实例、依赖管理等场景:
yamlversion: '3.8' services: github-runner: image: [镜像源地址]/github-actions-runner:latest container_name: github-runner restart: unless-stopped environment: - GITHUB_REPOSITORY=my-org/my-project - GITHUB_TOKEN=${GITHUB_TOKEN} # 建议通过宿主机环境变量传入,避免硬编码 - RUNNER_NAME=staging-runner - RUNNER_LABELS=staging,linux,x64 - RUNNER_WORKDIR=/workspace - HTTP_PROXY=[***] volumes: - ./runner-data:/runner # 持久化Runner配置(注册信息、证书等) - ./workspace:/workspace # 挂载自定义工作目录(可选) deploy: resources: limits: cpus: '2' # 限制CPU核心数 memory: 4G # 限制内存使用
启动命令:GITHUB_TOKEN=ghp_xxx docker-compose up -d
-v /host/path:/runner挂载/runner目录,持久化Runner注册信息(避免容器重建后需重新注册)。RUNNER_WORKDIR指定作业执行目录,建议挂载宿主机目录(如-v /host/workdir:/workspace),避免容器内存储满导致作业失败。支持为GitHub组织注册Runner(所有仓库共享),需修改GITHUB_REPOSITORY为组织名(格式:org/组织名),并确保GITHUB_TOKEN具备admin:org权限:
bashdocker run -d \ -e GITHUB_REPOSITORY="org/my-company" \ # 组织级Runner -e GITHUB_TOKEN="ghp_xxx" \ # 需admin:org权限 -e RUNNER_GROUP="shared-runners" \ # 组织Runner组 -v /host/runner-data:/runner \ [镜像源地址]/github-actions-runner:latest
除环境变量外,可通过命令行参数或挂载配置文件调整高级行为(需镜像支持):
docker run命令传递)--unattended:非交互式模式(默认启用,适合容器环境)--ephemeral:临时Runner(作业完成后自动注销,避免资源占用),需镜像支持EPHEMERAL_RUNNER=true环境变量--replace:替换同名Runner(若已存在同名Runner,先注销再注册)如需覆盖默认启动脚本(如添加前置初始化步骤),可通过--entrypoint指定自定义脚本:
bashdocker run -d \ --entrypoint /custom-entrypoint.sh \ -v ./custom-entrypoint.sh:/custom-entrypoint.sh \ ... # 其他参数
GITHUB_TOKEN需严格保密,禁止硬编码到脚本或镜像中,建议通过Docker Secrets、Kubernetes Secrets或CI/CD平台的环境变量管理(如GitHub Actions Secrets、GitLab CI Variables)。--cpus 2 --memory 4g),避免Runner占用过多宿主机资源。--network host或自定义Docker网络实现网络打通。GITHUB_TOKEN权限(需repo和workflow权限)、GITHUB_REPOSITORY格式是否正确、网络是否可访问api.github.com。docker logs <容器名>),检查作业步骤输出;确认Runner标签与工作流runs-on匹配。/runner目录,重新启动容器(会重新注册Runner,原Runner需手动在GitHub上移除)。来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429