正在加载 GitHub 仓库信息
Vuepress自动化部署的细节补充
约 598 字大约 2 分钟
2026-08-21
前言
这两天在重新优化Blog主题的时候引入了很多新字体,带有中文字库的大体积字体,再推送到仓库后发现Jenkins拉取又有问题了。
在使用SSH链路时会直接爆和以前一样的超时:
fetch-pack: unexpected disconnect while reading sideband packet
fatal: early EOF
fatal: unpack-objects failed而使用Https链路时,受限于我的土豆服务器网络环境,大多数时候都会直接爆 443 Connection timed out,不对啊我记得前段时间好像给服务器上了代理来着,怎么可能还是连接超时呢?
在手动环境下 curl 确实能正常拉取且速度也正常,破案了,Jenkins好像没吃到代理。
相关信息
Jenkins 是 systemd 启动的独立服务,它不会自动继承你登录 shell 的 http_proxy/https_proxy。clash 安装方案本身也依赖 shell 加载/环境注入来启用代理,所以 Jenkins 很可能完全没吃到。
解决方向
先看当前 shell 到底用了什么代理,一般clash/mihomo 安装方案常见代理监听就是本机 127.0.0.1:7890。
env | grep -i proxy验证 Jenkins 用户手工带代理时能不能访问 GitHub
sudo -u jenkins \
HTTPS_PROXY=http://127.0.0.1:7890 \
HTTP_PROXY=http://127.0.0.1:7890 \
curl -I https://github.com如果能马上返回 HTTP/2 200 或重定向,就说明方向正确。
解决方案
systemctl edit jenkins写入以下内容:
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7890"
Environment="HTTPS_PROXY=http://127.0.0.1:7890"
Environment="http_proxy=http://127.0.0.1:7890"
Environment="https_proxy=http://127.0.0.1:7890"
Environment="NO_PROXY=localhost,127.0.0.1"
Environment="no_proxy=localhost,127.0.0.1"保存退出后:
systemctl daemon-reload
systemctl restart jenkins确认 Jenkins 服务真的拿到了代理变量:
systemctl show jenkins --property=Environment输出类似:
HTTP_PROXY=http://127.0.0.1:7890
HTTPS_PROXY=http://127.0.0.1:7890完成后再去启动一次Jenkins工作流,应该就可以正常工作了。
参考
本文适用于那些自有云服部署工作流,但是网络环境不好的,比如笔者所使用的京东云轻量云服务器。
所使用的代理服务:
更新日志
2026/8/22 01:50
查看所有更新日志
3f91c-📝 docs(blog): 更新Blog于