1. Jenkins与Docker化部署概述
作为一款老牌持续集成工具,Jenkins在现代DevOps体系中依然占据重要地位。我最近在客户现场完成了三套Jenkins集群的容器化迁移,深刻体会到Docker部署方式带来的便利性。相比传统虚拟机部署,容器化方案具有以下优势:
- 环境一致性:镜像打包了全部依赖,彻底解决"在我机器上能跑"的问题
- 快速部署:一条docker run命令即可完成基础服务搭建
- 资源隔离:避免多个构建任务相互干扰
- 弹性扩展:为后续接入Kubernetes集群奠定基础
本次部署将使用官方jenkins/jenkins镜像的lts版本(当前为2.426.1),这个长期支持版本经过充分测试,适合生产环境使用。需要特别注意的是:
- 主机需安装Docker CE 20.10+版本
- 预留至少4GB内存(建议8GB)
- 准备50GB以上存储空间用于存放构建产物
提示:虽然Jenkins支持JDK8运行,但官方已明确2.357版本后需要JDK11+。使用容器部署时无需单独安装JDK,镜像已内置适配的Java环境。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心部署流程详解
2.1 准备工作与环境检查
在开始前需要确认基础环境符合要求:
bash复制# 检查Docker版本
docker --version
# 输出应类似:Docker version 20.10.21, build baeda1f
# 检查内存资源
free -h
# 建议可用内存 ≥4GB
# 创建数据目录
mkdir -p /var/jenkins_home && chmod 777 /var/jenkins_home
对于国内用户,建议提前配置镜像加速:
bash复制# 编辑docker配置
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
EOF
# 重启服务
sudo systemctl restart docker
2.2 Jenkins Server容器部署
使用以下命令启动主服务:
bash复制docker run -d \
--name jen
