温馨提示×

Debian下Jenkins如何设置

小樊
48
2026-07-17 02:14:51
栏目: 智能运维

下面分步骤介绍 在 Debian 系统下安装和设置 Jenkins,从安装到基本配置,适用于 Debian 11 / 12(其他版本也类似)。


一、环境准备

1. 更新系统

sudo apt update
sudo apt upgrade -y

2. 安装 Java(Jenkins 依赖)

Jenkins 需要 Java 11 或 Java 17(推荐 Java 17)

sudo apt install -y openjdk-17-jdk

验证:

java -version

二、安装 Jenkins

方法一(推荐):使用官方 Jenkins 仓库

1. 导入 Jenkins GPG 密钥

curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key | sudo tee \
  /usr/share/keyrings/jenkins-keyring.asc > /dev/null

2. 添加 Jenkins APT 源

echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
/etc/apt/sources.list.d/jenkins.list > /dev/null

3. 安装 Jenkins

sudo apt update
sudo apt install -y jenkins

三、启动并设置 Jenkins

1. 启动 Jenkins

sudo systemctl start jenkins
sudo systemctl enable jenkins

2. 检查状态

sudo systemctl status jenkins

四、配置防火墙(如有 UFW)

sudo ufw allow 8080
sudo ufw reload

五、初始化 Jenkins

1. 获取初始管理员密码

sudo cat /var/lib/jenkins/secrets/initialAdminPassword

2. 浏览器访问

http://<服务器IP>:8080

输入上面获取的密码。


六、基本设置

1. 安装插件

  • 选择 Install suggested plugins(推荐)
  • 或自定义插件

2. 创建管理员账号

按提示设置用户名、密码、邮箱

3. 完成安装向导


七、常用配置

1. 修改 Jenkins 端口(可选)

编辑配置文件:

sudo nano /usr/lib/systemd/system/jenkins.service

修改:

Environment="JENKINS_PORT=8081"

重载并重启:

sudo systemctl daemon-reload
sudo systemctl restart jenkins

2. 设置 Jenkins 为中文(可选)

安装插件:

  • Locale Plugin
  • 系统管理 → 系统配置 → Locale
    • 设置为:zh_CN
    • 勾选 “Ignore browser preference”

3. 配置 Jenkins 使用 Git

sudo apt install -y git

Jenkins 中安装插件:

  • Git Plugin

八、目录说明

项目 路径
主目录 /var/lib/jenkins
配置文件 /var/lib/jenkins/config.xml
日志 /var/log/jenkins/jenkins.log
服务文件 /usr/lib/systemd/system/jenkins.service

九、常见问题

1. Jenkins 无法启动

检查 Java 是否正确安装:

which java
java -version

2. 端口被占用

sudo netstat -tulnp | grep 8080

十、进阶建议

  • 配置 Nginx 反向代理(HTTPS)
  • 配置 Jenkins 用户权限(Role-based Authorization)
  • 配置 Pipeline + Git + Docker

如果你需要:

  • Jenkins + Docker
  • Jenkins + GitLab / GitHub
  • Jenkins Pipeline 示例
  • Debian + Jenkins + Nginx HTTPS

可以直接告诉我你的使用场景。

0