Jenkins在Ubuntu上的网络配置
一 主机网络与DNS配置
network:
version: 2
renderer: networkd
ethernets:
enp0s3:
dhcp4: no
addresses: [10.0.2.15/24]
gateway4: 10.0.2.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
sudo netplan apply
若使用 NetworkManager,也可用 nmcli 设置 DNS:sudo nmcli con modify "Wired connection 1" ipv4.dns "8.8.8.8, 8.8.4.4"
sudo nmcli con up "Wired connection 1"
某些云镜像或系统可能使用 /etc/systemd/resolved.conf 管理 DNS,可按需配置并重启相关服务。以上步骤完成后,建议用 ping 与 nslookup 验证连通性与解析是否正常。二 防火墙与端口开放
sudo ufw allow 8080/tcp
sudo ufw allow 50000/tcp
sudo ufw reload
sudo ufw status verbose
sudo netstat -tulpen | grep -E '8080|50000' 确认监听状态。三 反向代理与域名访问
sudo apt-get update && sudo apt-get install -y nginx
sudo tee /etc/nginx/sites-available/jenkins <<'EOF'
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;
}
}
EOF
sudo ln -s /etc/nginx/sites-available/jenkins /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
如需 HTTPS,可结合 Let’s Encrypt 与 certbot 配置 443 端口与证书。四 Docker部署时的端口映射
version: '3.8'
services:
jenkins:
image: jenkins/jenkins:lts
restart: always
ports:
- "8080:8080"
- "50000:50000"
environment:
TZ: Asia/Shanghai
volumes:
- jenkins_data:/var/jenkins_home
volumes:
jenkins_data:
首次启动后,可在容器日志或挂载目录的 secrets/initialAdminPassword 获取初始管理员密码。注意主机防火墙与安全组同样需要放行 8080/50000。五 连通性与故障排查
ping 网关与公网地址、nslookup 验证 DNS 解析。sudo ufw status、sudo netstat -tulpen | grep -E '8080|50000' 确认端口开放与监听地址。sudo systemctl status jenkins,必要时 sudo systemctl restart jenkins 并查看日志(如 /var/log/jenkins/jenkins.log 或 JENKINS_HOME/logs/)。