温馨提示×

debian怎样配置jenkins服务

小樊
39
2026-10-16 17:36:49
栏目: 智能运维

在 Debian 上配置 Jenkins 服务,通常分为 安装、启动、基础配置、以及可选的系统级管理 几部分。下面给你一个从零开始的完整流程(适用于 Debian 11/12)。


一、安装 Jenkins(Debian)

1. 安装依赖

sudo apt update
sudo apt install -y openjdk-17-jdk curl gnupg

Jenkins 2.4xx 推荐使用 Java 17
可用 java -version 验证


2. 添加 Jenkins 官方仓库

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

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. 启动服务

sudo systemctl enable jenkins
sudo systemctl start jenkins

查看状态:

systemctl status jenkins

2. 防火墙(如有)

sudo ufw allow 8080

3. 初始化 Jenkins

浏览器访问:

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

获取管理员密码:

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

按提示:

  • 安装推荐插件
  • 创建管理员用户

三、Jenkins 服务管理(systemd)

常用命令

sudo systemctl start jenkins
sudo systemctl stop jenkins
sudo systemctl restart jenkins
sudo systemctl status jenkins

配置文件位置

  • 主配置:/etc/default/jenkins
  • 数据目录:/var/lib/jenkins
  • 日志:/var/log/jenkins/jenkins.log

四、常见配置修改

1. 修改端口(如改 8080 → 9090)

编辑:

sudo nano /etc/default/jenkins

修改:

JENKINS_PORT=9090

重启:

sudo systemctl restart jenkins

2. 使用 Nginx 反向代理(推荐)

server {
    listen 80;
    server_name jenkins.example.com;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

3. 以非 root 用户运行(默认已是 jenkins 用户)

ps -ef | grep jenkins

五、可选:Docker 方式运行(补充)

如果你不想用系统包:

docker run -d \
  -p 8080:8080 -p 50000:50000 \
  -v jenkins_home:/var/jenkins_home \
  --name jenkins \
  jenkins/jenkins:lts

六、常见问题

Java 版本错误

jenkins: failed to start (java not found)

解决:确认 JAVA_HOME 并设置到 /etc/default/jenkins


权限问题

sudo chown -R jenkins:jenkins /var/lib/jenkins

如果你需要:

  • Jenkins + GitLab / GitHub 自动构建
  • Pipeline 配置示例
  • Jenkins 与 Docker / K8s 集成

可以继续告诉我你的使用场景。

0 踩