首先拉取Jenkins LTS镜像并创建持久化目录,接着通过docker run或docker-compose启动容器,挂载数据卷并映射端口,然后访问localhost:8080,根据初始密码完成设置,安装推荐插件如Git、Docker Pipeline等,最后可选配置国内插件源加速下载,实现快速部署。

在现代持续集成与持续交付(CI/CD)流程中,Jenkins 是广泛使用的开源自动化服务器。通过 Docker 容器化部署 Jenkins,可以快速搭建、迁移和管理环境,避免依赖冲突,提升开发效率。下面介绍如何在 Docker 中搭建 Jenkins 环境。
准备环境
确保你的系统已安装 Docker 和 Docker Compose(可选但推荐)。支持的操作系统包括 Linux、macOS 和 Windows(使用 WSL 或 Docker Desktop)。
检查是否安装成功:
- docker --version:查看 Docker 版本
- docker-compose --version:查看 Docker Compose 版本
拉取 Jenkins 官方镜像
Jenkins 官方提供了长期支持版本(LTS)的 Docker 镜像,适合生产环境使用。
执行命令拉取镜像:
docker pull jenkins/jenkins:lts该命令会下载稳定版 Jenkins 镜像,后续容器将基于此镜像运行。
创建本地目录用于数据持久化
Docker 容器本身是临时的,为防止 Jenkins 配置、插件和构建记录丢失,需将关键数据挂载到宿主机。
创建目录:
mkdir -p /jenkins/data /jenkins/logs赋予权限(Jenkins 容器默认使用用户 jenkins,UID 1000):
chown -R 1000:1000 /jenkins/data /jenkins/logs启动 Jenkins 容器
使用 docker run 命令启动容器,并完成基本配置:
docker run -d \--name jenkins \
-p 8080:8080 \
-p 50000:50000 \
-v /jenkins/data:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
-e JAVA_OPTS=-Djenkins.install.runSetupWizard=true \
jenkins/jenkins:lts
参数说明:
- -d:后台运行容器
- -p 8080:8080:映射 Web 界面端口
- -p 50000:50000:Agent 节点通信端口
- -v /jenkins/data:/var/jenkins_home:持久化 Jenkins 数据
- -v /var/run/docker.sock:/var/run/docker.sock:允许容器内操作宿主机 Docker(用于构建镜像等)
- -e JAVA_OPTS=...:强制显示初始化向导
访问 Jenkins 并完成初始设置
容器启动后,访问 http://localhost:8080 进入 Jenkins 页面。
首次启动需输入管理员密码:
docker logs jenkins查找类似以下输出:
Jenkins initial setup is required. An admin user has been created and a password generated. Please use the following password to proceed to installation: XXXXXXXXXXXXXXXXXXXX复制密码并填入网页,继续安装推荐插件或选择自定义插件。
推荐插件安装
Jenkins 初始化时建议安装以下插件:
- Git:支持从 Git 仓库拉取代码
- Docker Pipeline:在 Pipeline 中使用 Docker 命令
- Blue Ocean:现代化 CI/CD 界面
- GitHub Integration:支持 GitHub Webhook
你也可以稍后在“插件管理”中添加。
(可选)使用 Docker Compose 管理服务
创建 docker-compose.yml 文件简化管理:
version: '3'services:
jenkins:
image: jenkins/jenkins:lts
container_name: jenkins
ports:
- "8080:8080"
- "50000:50000"
volumes:
- /jenkins/data:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock
environment:
- JAVA_OPTS=-Djenkins.install.runSetupWizard=true
restart: unless-stopped
启动服务:
docker-compose up -d这种方式更便于后期扩展,例如加入 Nginx 反向代理或数据库服务。
常见问题处理
遇到权限错误?确保 /jenkins/data 目录归属 UID 1000。
插件安装慢?可在“系统管理 -> 插件管理 -> 高级”中更换更新站点 URL 为国内镜像源,如清华源:
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/current/update-center.json忘记密码?重新设置管理员密码需进入容器修改 config.xml 或重建用户。
基本上就这些。通过 Docker 部署 Jenkins 快速、干净,适合本地测试或小型团队使用。










