在 Debian 上排错 Jenkins,通常可以按「服务起不来 → 页面访问异常 → 构建失败 → 权限/环境」这样一个思路来排查。下面给你一套比较实用的排错手册。
systemctl status jenkins
常见状态:
active (running):服务正常failed:启动失败(看日志)journalctl -u jenkins -xe
或
cat /var/log/jenkins/jenkins.log
常见错误:
Jenkins 对 Java 版本敏感。
查看 Java:
java -version
推荐:
如有多版本:
update-alternatives --config java
Jenkins 使用的 Java:
systemctl show jenkins | grep Environment
grep HTTP_PORT /etc/default/jenkins
修改端口:
sudo nano /etc/default/jenkins
# HTTP_PORT=8080
systemctl restart jenkins
ufw allow 8080
或
iptables -L
首次访问:
http://<IP>:8080
获取密码:
cat /var/lib/jenkins/secrets/initialAdminPassword
如果页面一直转圈:
nano /var/lib/jenkins/hudson.model.UpdateCenter.xml
替换为:
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
重启:
systemctl restart jenkins
测试 Jenkins 用户环境:
sudo -u jenkins bash
which git
echo $PATH
Jenkins 默认用户是 jenkins
查看:
ps aux | grep jenkins
给目录权限:
chown -R jenkins:jenkins /var/lib/jenkins
Docker / 挂载目录也要注意 UID。
systemctl stop jenkins
apt remove --purge jenkins
rm -rf /var/lib/jenkins
apt install jenkins
✅ systemctl status jenkins
✅ journalctl -u jenkins
✅ java -version
✅ 端口是否通
✅ 防火墙 / 安全组
✅ /var/log/jenkins/jenkins.log
✅ 构建 Console Output
如果你愿意,可以把:
systemctl status jenkinsjournalctl -u jenkins 的最后 30 行贴出来,我可以直接帮你定位具体问题。