温馨提示×

Debian Jenkins怎么配域名

小樊
41
2026-09-23 08:05:20
栏目: 云计算

在 Debian 上给 Jenkins 配置域名,通常分三种场景,最常见的是通过 Nginx 反向代理 + 域名解析。下面按“最推荐方案”一步一步来。


一、前提条件

  • 已安装 Jenkins(默认端口 8080)
  • 有一个域名(如 jenkins.example.com)
  • Debian 已安装 Nginx
  • 域名已解析到服务器公网 IP

二、域名解析(DNS)

在你的域名服务商处添加记录:

类型:A
主机名:jenkins
记录值:你的服务器公网IP

例如:

jenkins.example.com → 1.2.3.4

三、安装 Nginx(如果没装)

sudo apt update
sudo apt install nginx -y

四、配置 Nginx 反向代理

新建配置文件:

sudo nano /etc/nginx/sites-available/jenkins

内容如下(重点配置):

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;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

启用配置:

sudo ln -s /etc/nginx/sites-available/jenkins /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

五、Jenkins 系统配置(非常重要)

否则会出现 反向代理错误

  1. 打开:
http://jenkins.example.com
  1. 进入:
Manage Jenkins → System
  1. 设置:
Jenkins URL = https://jenkins.example.com/
(或 http,如果还没 HTTPS)
  1. 保存

六、(强烈推荐)配置 HTTPS

使用 Let’s Encrypt 免费证书:

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d jenkins.example.com

证书会自动配置并续期。


七、防火墙(如有)

确保 80 / 443 开放:

sudo ufw allow 80
sudo ufw allow 443

八、常见问题

1. Jenkins 提示“反向代理配置错误”

✅ 检查:

  • Jenkins URL 是否和访问域名一致
  • Nginx 是否带了 X-Forwarded-Proto

2. 只想内网用域名

改 hosts 文件即可:

sudo nano /etc/hosts
192.168.1.10 jenkins.local

九、简洁架构总结

域名
  ↓
Nginx (80/443)
  ↓
Jenkins (8080)

如果你愿意,我可以:

  • 帮你写 完整 Nginx HTTPS 配置
  • 教你 Jenkins 走 Docker + 域名
  • 解决你当前的 具体报错信息

直接把问题贴出来即可。

0 踩