基于 Ubuntu 24.04 (Noble Numbat) 系统,使用官方仓库安装 Jenkins 2.x
一、前置准备
1. 更新系统包
sudo apt update && sudo apt upgrade -y
2. 安装 Java 环境(必需)
Jenkins 2.400+ 需要 Java 17 或 Java 21:
# 安装 OpenJDK 17(推荐 LTS 版本)
sudo apt install openjdk-17-jdk -y
# 验证安装
java -version
预期输出:
openjdk version "17.0.x" 2024-xx-xx
OpenJDK Runtime Environment (build 17.0.x+xx-Ubuntu-1ubuntu240.04)
二、添加 Jenkins 官方仓库
1. 安装依赖工具
sudo apt install curl gnupg -y
2. 添加 Jenkins GPG 密钥
# 下载并添加官方密钥
curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key | \
sudo gpg --dearmor -o /usr/share/keyrings/jenkins.gpg
3. 配置软件源
# 添加 Jenkins 仓库(使用 signed-by 指定密钥)
echo "deb [signed-by=/usr/share/keyrings/jenkins.gpg] \
https://pkg.jenkins.io/debian-stable binary/" | \
sudo tee /etc/apt/sources.list.d/jenkins.list > /dev/null
4. 更新包索引
sudo apt update
常见问题:如果遇到 NO_PUBKEY 错误,请确保上述 GPG 密钥步骤执行正确。
三、安装 Jenkins
sudo apt install jenkins -y
四、关键配置:修复 Java 路径
Ubuntu 24.04 必须执行此步骤,否则 Jenkins 无法启动。
1. 编辑 systemd 服务文件
sudo nano /usr/lib/systemd/system/jenkins.service
2. 在 [Service] 段添加 JAVA_HOME
找到 [Service] 部分,添加以下行:
[Service]
Type=notify
NotifyAccess=main
ExecStart=/usr/bin/jenkins
Restart=on-failure
SuccessExitStatus=143
# 添加这一行(根据实际 Java 版本调整)
Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64"
如果使用 Java 21,路径改为 /usr/lib/jvm/java-21-openjdk-amd64
3. 重载配置并启动
# 重载 systemd
sudo systemctl daemon-reload
# 启动 Jenkins
sudo systemctl start jenkins
# 设置开机自启
sudo systemctl enable jenkins
4. 验证状态
sudo systemctl status jenkins
预期输出:
- jenkins.service - Jenkins Continuous Integration Server
Active: active (running) since Wed 2026-04-08 12:35:00 CST
五、初始化 Jenkins
1. 获取初始管理员密码
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
复制输出的一串字符(如 a1b2c3d4e5f6...)。
2. 浏览器访问
http://<服务器IP>:8080
本地安装则访问:
http://localhost:8080
3. 完成初始化向导
- 解锁 Jenkins- 粘贴刚才复制的初始密码
- 安装插件- 选择 “安装推荐的插件”(推荐新手)
- 创建管理员用户- 设置用户名、密码、邮箱
- 配置实例 URL- 保持默认 http://<服务器IP>:8080/
- 开始使用 Jenkins- 点击完成进入主界面
六、防火墙配置(如需要)
UFW 防火墙
# 允许 8080 端口
sudo ufw allow 8080/tcp
# 重新加载
sudo ufw reload
AWS EC2 安全组
如果是 AWS 实例,需在安全组中添加规则: - 类型:自定义 TCP - 端口范围:8080 - 源:0.0.0.0/0(或指定 IP)
七、常用管理命令
|
命令
|
说明
|
|
sudo systemctl start jenkins
|
启动服务
|
|
sudo systemctl stop jenkins
|
停止服务
|
|
sudo systemctl restart jenkins
|
重启服务
|
|
sudo systemctl status jenkins
|
查看状态
|
|
sudo journalctl -u jenkins -f
|
实时查看日志
|
|
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
|
查看初始密码
|
八、常见问题排查
Q1: apt update 提示 GPG 错误
解决:重新导入密钥
curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key | \
sudo gpg --dearmor -o /usr/share/keyrings/jenkins.gpg
sudo apt update
Q2: Jenkins 启动失败 failed to find a valid Java installation
解决:确保已按步骤四配置 JAVA_HOME 环境变量,并执行 daemon-reload。
Q3: 浏览器无法访问 8080 端口
排查步骤: 1. 检查 Jenkins 状态:sudo systemctl status jenkins 2. 检查端口监听:sudo ss -tlnp | grep 8080 3. 检查防火墙/安全组是否开放 8080
九、文件路径参考
|
路径
|
说明
|
|
/usr/lib/systemd/system/jenkins.service
|
systemd 服务配置
|
|
/etc/default/jenkins
|
传统环境变量配置(备用)
|
|
/var/lib/jenkins/
|
Jenkins 主目录(插件、任务等)
|
|
/var/lib/jenkins/secrets/initialAdminPassword
|
初始管理员密码
|
|
/var/log/jenkins/jenkins.log
|
日志文件
|
|
/usr/share/keyrings/jenkins.gpg
|
GPG 密钥文件
|
安装完成! 🎉 现在可以开始创建你的第一个 Jenkins 流水线了。