3、Jenkins环境搭建:Jenkins的安装(War包/Docker/系统服务)、初始配置、插件管理入门

搭建Jenkins环境,到底选哪种方式最靠谱?War包、Docker、还是系统服务?说实话,这个问题我经常被问到。今天我就把这三种方式掰开揉碎讲清楚,包括各自适合什么场景、怎么操作、有哪些坑。你想想看,如果一开始安装方式选错了,后面流水线跑起来再折腾重装,那滋味可不好受。

一点个人经验: 我最早接触Jenkins时用的是War包方式,那时候Docker还没普及。后来团队全面转向容器化,我才发现Docker部署真香——干净、隔离、好迁移。但这不代表War包和系统服务方式过时了,关键看你的场景。
Jenkins环境搭建核心流程 安装方式选择 War包部署 Docker部署 系统服务部署 初始配置 插件管理入门 💡 新手推荐:Docker部署 > 系统服务部署 > War包部署

3.1 三种安装方式,你选哪种?

每种方式都有各自的脾气。我按自己的使用体感,把它们的核心区别整理了一下:

安装方式 上手难度 适合场景 我的评价
War包 中等 开发环境、快速验证 灵活但需要自己管Java环境
Docker 低 开发/测试/CI环境 最省心,推荐新手首选
系统服务 低-中 生产环境 稳定可靠,适合长期运行

3.1.1 War包安装:最传统的方式

War包安装说白了就是直接跑一个Java Web应用。你需要自己准备JDK,然后下载Jenkins的War包启动。我在项目中遇到过JDK版本不匹配的问题——Jenkins新版本对JDK的要求越来越高,忘记升级JDK会导致启动失败。

# 安装Java 11(Jenkins 2.346+ 需要 JDK 11)
sudo apt install openjdk-11-jdk

# 下载LTS版本的War包
wget https://get.jenkins.io/war-stable/latest/jenkins.war

# 启动Jenkins(前台运行)
java -jar jenkins.war --httpPort=8080
避坑指南: 我曾经因为直接在生产环境用 java -jar 前台启动,终端一关服务就挂了。记得用 nohup 或者搭配 systemd 来管理进程。

War包方式最大的好处是灵活——你可以指定任意端口、任意JDK版本,甚至修改Jenkins的启动参数。适合喜欢"一切尽在掌握"的工程师。

3.1.2 Docker安装:我最推荐的方式

Docker部署Jenkins,我个人习惯用这种方式。干净、可重复、好升级。你想想看,一条命令就能跑起来,还能通过数据卷持久化配置,简直不要太方便。

# 拉取LTS镜像
docker pull jenkins/jenkins:lts

# 启动容器(带数据卷持久化)
docker run -d \
  -p 8080:8080 \
  -p 50000:50000 \
  -v jenkins_home:/var/jenkins_home \
  --name jenkins \
  jenkins/jenkins:lts
关键点: 一定要挂载 jenkins_home 数据卷!我曾经因为没挂载,容器重启后所有配置、Job、构建记录全丢了……那感觉,真的欲哭无泪。

Docker方式还有一个好处:升级时只需换镜像标签,重启容器即可。想回滚?换回旧标签就行了。这对CI/CD环境的版本管理非常友好。

3.1.3 系统服务安装:生产环境的首选

如果你在生产环境部署,我建议用系统服务方式。它会把Jenkins注册为系统服务,支持开机自启、日志管理、用户隔离。我在公司生产环境就用这种方式,稳定运行了一年多没出过问题。

# CentOS / RHEL 为例
sudo wget -O /etc/yum.repos.d/jenkins.repo \
  https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

sudo yum install jenkins -y

# 启动并设置开机自启
sudo systemctl start jenkins
sudo systemctl enable jenkins
小技巧: 安装完成后,用 sudo systemctl status jenkins 查看服务状态。如果启动失败,先看看 /var/log/jenkins/jenkins.log 里面的错误信息,八成是端口冲突或Java没装对。

3.2 初始配置

不管用哪种方式安装,启动后的第一步都是一样的。Jenkins会生成一个初始密码,你需要用它来解锁。

  1. 访问Jenkins: 浏览器打开 http://你的服务器IP:8080
  2. 获取初始密码:
    • War包/系统服务方式:sudo cat /var/lib/jenkins/secrets/initialAdminPassword
    • Docker方式:docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
  3. 安装插件: 选择"安装推荐的插件"——对新手来说这是最稳妥的选择。它会自动安装Git、Pipeline、LDAP等常用插件。
  4. 创建管理员账号: 填写用户名、密码、邮箱,以后就用这个账号登录。
  5. 配置实例URL: 默认是 http://localhost:8080,如果通过反向代理或域名访问,记得改成实际的URL。
注意: 初始密码是一次性的,解锁后就不再显示。如果你忘了管理员密码,可以去 JENKINS_HOME/users/ 目录下手动修改配置文件重置。我曾经在演示现场翻过这个车……嗯,很尴尬。

3.3 插件管理入门

Jenkins的强大很大程度上来自它的插件生态。插件管理入口在 Dashboard → 系统管理 → 插件管理。你可以在线搜索、安装、升级或卸载插件。

刚入门时,你不需要装太多插件。我列几个最常用的:

插件名称 作用 推荐程度
Pipeline 流水线即代码,核心插件 ⭐⭐⭐⭐⭐
Git 集成Git仓库 ⭐⭐⭐⭐⭐
Blue Ocean 可视化流水线界面 ⭐⭐⭐⭐
Docker Pipeline 在流水线中构建/运行Docker ⭐⭐⭐⭐
Credentials Binding 安全管理密钥和凭证 ⭐⭐⭐⭐⭐
我的建议: 第一次配置时,选"安装推荐插件"就够了。之后按需添加,避免插件臃肿导致Jenkins启动变慢。记住——插件不是越多越好,够用就行。

插件安装完成后,大部分需要重启Jenkins才能生效。你可以通过 http://你的Jenkins地址/safeRestart 安全重启,不会中断正在运行的任务。

嗯,到这里,Jenkins环境搭建的核心步骤就都走通了。从安装方式的选择,到初始配置,再到插件管理——这套流程我反反复复搭过几十次,按这个顺序来,基本不会出大问题。