Jenkins在Ubuntu上的网络配置
导读:Jenkins在Ubuntu上的网络配置 一 主机网络与DNS配置 Ubuntu 18.04 及以后默认使用 Netplan 管理网络。编辑 /etc/netplan/*.yaml(文件名因环境而异,如 50-cloud-init.yam...
Jenkins在Ubuntu上的网络配置
一 主机网络与DNS配置
- Ubuntu 18.04 及以后默认使用 Netplan 管理网络。编辑 /etc/netplan/*.yaml(文件名因环境而异,如 50-cloud-init.yaml),设置静态地址、网关与 DNS,然后应用:
若使用 NetworkManager,也可用 nmcli 设置 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
某些云镜像或系统可能使用 /etc/systemd/resolved.conf 管理 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"ping与nslookup验证连通性与解析是否正常。
二 防火墙与端口开放
- 放行 Jenkins Web 端口 8080 与 Agent 通信端口 50000(如使用内置 SSH 代理模式):
sudo ufw allow 8080/tcp sudo ufw allow 50000/tcp sudo ufw reload sudo ufw status verbose - 如运行在云服务器,还需在云平台安全组放行对应端口。完成后可用
sudo netstat -tulpen | grep -E '8080|50000'确认监听状态。
三 反向代理与域名访问
- 使用 Nginx 作为反向代理,将域名或公网 IP 的 80/443 转发至本机 8080,便于启用 HTTPS 与统一入口:
如需 HTTPS,可结合 Let’s Encrypt 与 certbot 配置 443 端口与证书。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
四 Docker部署时的端口映射
- Docker Compose 示例(将主机 8080/50000 映射到容器):
首次启动后,可在容器日志或挂载目录的 secrets/initialAdminPassword 获取初始管理员密码。注意主机防火墙与安全组同样需要放行 8080/50000。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:
五 连通性与故障排查
- 基础连通性:
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/)。 - 资源与插件:检查 磁盘空间、Java 版本兼容、插件镜像源与版本冲突;必要时调整 JVM 堆大小与构建并发。以上步骤可快速定位大多数网络与服务可用性异常。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Jenkins在Ubuntu上的网络配置
本文地址: https://pptw.com/jishu/751360.html
