
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
该项目旨在构建预配置的Jenkins 2 Docker镜像,提供运行全Docker支持的Jenkins所需的所有插件,支持多Docker从节点和Docker Pipeline插件,适用于快速部署Docker环境下的Jenkins主从架构。
Docker Hub上提供三个镜像:Jenkins主节点、SSH从节点和JNLP从节点。
最新镜像可在https://hub.docker.com/r/foxylion/jenkins/%E8%8E%B7%E5%8F%96%E3%80%82
Jenkins主节点镜像提供预配置的Jenkins 2版本,包含运行Docker流水线所需的所有插件,并集成新的Blueocean流水线视图。
Jenkins主节点需暴露HTTP端口和从节点通信端口。
bashdocker run -d --name jenkins -p 80:8080 -p 50000:50000 \ -v /var/lib/jenkins:/var/jenkins_home \ docker.xuanyuan.run/foxylion/jenkins
JENKINS_PASS环境变量修改密码/var/lib/jenkins移除-v参数会阻止容器向主机文件系统写入数据,但容器删除时可能导致数据丢失。
最新镜像可在https://hub.docker.com/r/foxylion/jenkins-ssh-slave/%E8%8E%B7%E5%8F%96%E3%80%82
Jenkins SSH从节点镜像是轻量级解决方案,可在任何Docker启用的服务器上零依赖运行Jenkins从节点。其设计理念是在Docker主机上运行容器,暴露SSH服务器供Jenkins主节点连接。镜像支持配置可信SSH密钥或密码认证。
bashdocker run -d --name jenkins-slave --restart=unless-stopped \ -p 2222:22 \ -v /home/jenkins:/home/jenkins \ -v /var/run/docker.sock:/var/run/docker.sock \ -e SSH_KEY="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6CPOQDrq...faMvvidd+RVSfDBgJE1g3 jenkins@jenkins.company.tld" \ docker.xuanyuan.run/foxylion/jenkins-ssh-slave
在Jenkins主节点上配置新节点时需注意:
root/home/jenkinsdocker logs jenkins-slave获取从节点指纹并进行比对以下环境变量可自定义从节点行为:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
SSH_PASSWORD | 用于配置密码认证 | jenkins |
SSH_KEY | 配置后仅允许使用此密钥认证 | - |
最新镜像可在https://hub.docker.com/r/foxylion/jenkins-slave/%E8%8E%B7%E5%8F%96%E3%80%82
Jenkins JNLP从节点镜像提供可配置的Jenkins从节点版本,支持凭据或JNLP从节点密钥认证。从节点容器启动时可自动创建节点,容器停止时自动移除节点。
bashdocker run -d --name jenkins-slave --restart=unless-stopped \ -v /home/jenkins:/home/jenkins \ -v /var/run/docker.sock:/var/run/docker.sock \ -e JENKINS_URL=https://jenkins.mycompany.com \ docker.xuanyuan.run/foxylion/jenkins-slave
默认情况下,从节点会自动创建临时Jenkins节点,名称由前缀docker-slave和容器主机名组成。
注意:JNLP从节点与主节点通信时不提供加密,不建议在不可信网络中使用。建议改用SSH从节点镜像。
以下环境变量可自定义从节点行为:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
JENKINS_URL | Jenkins的HTTP访问URL | http://jenkins |
JENKINS_SLAVE_ADDRESS | 启动TCP连接时用于连接Jenkins服务器的替代地址,会覆盖Jenkins主节点提供的地址 | - |
JENKINS_USER | 用于Jenkins主节点认证的用户 | admin |
JENKINS_PASS | 用于Jenkins主节点认证的密码 | admin |
SLAVE_NAME | Jenkins节点名称(必须与现有节点匹配),留空则自动生成 | - |
SLAVE_SECRET | 使用提供的JNLP密钥代替用户/密码认证 | - |
SLAVE_EXECUTORS | 从节点提供的执行器数量 | 1 |
SLAVE_LABELS | 从节点标签,使用空格分隔 | docker |
SLAVE_WORKING_DIR | 自定义工作目录(当无法在docker run命令中使用-w时) | - |
CLEAN_WORKING_DIR | 设置为true时,从节点启动时清理工作目录,可防止工作目录中存储的配置导致构建失败 | true |
临时从节点
当SLAVE_NAME环境变量留空时启用临时从节点功能。从节点会自动创建具有生成名称的新Jenkins节点,从节点关闭后Jenkins节点会被删除。如需避免此行为,使用持久从节点。
持久从节点
运行不自动创建Jenkins节点但使用JNLP从节点认证的从节点。
注意:必须将从节点的"远程根目录"设置为/home/jenkins。
bashdocker run -d \ -v /home/jenkins:/home/jenkins \ -v /var/run/docker.sock:/var/run/docker.sock \ -e JENKINS_URL=http://jenkins.mycompany.com \ -e SLAVE_NAME=docker-slave-028 \ docker.xuanyuan.run/foxylion/jenkins-slave
更改"远程根目录"
默认情况下,Jenkins从节点要求/home/jenkins挂载到Docker主机上的等效目录。
注意:主机上使用不同的目录路径会导致构建失败。了解更多(章节:"在容器内运行构建步骤")
如需在Docker主机上使用不同目录,可在启动容器时指定:
bashdocker run -d \ -w /tmp/jenkins-slave \ -v /tmp/jenkins-slave:/tmp/jenkins-slave \ -v /var/run/docker.sock:/var/run/docker.sock \ -e JENKINS_URL=http://jenkins.mycompany.com \ docker.xuanyuan.run/foxylion/jenkins-slave
以下链接有助于开始使用Jenkins流水线与Docker结合:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 foxylion/jenkins 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: