You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Snap代理失效:Ubuntu 18.04安装Conjure-Up遇代理连接错误求助

解决Ubuntu 18.04上Snap安装Conjure-Up的代理EOF错误

我之前也碰到过类似的Snap代理问题——虽然系统层面的环境变量配置好了,但Snap服务往往不会自动读取这些设置,或者需要单独做代理配置。下面是几个亲测有效的解决办法:

方案1:临时为安装命令指定代理

直接在执行安装命令时附带代理参数,绕开系统环境变量的读取问题:

sudo http_proxy=http://你的代理地址:端口 https_proxy=http://你的代理地址:端口 snap install conjure-up --classic

如果代理需要身份认证,格式为 http://用户名:密码@代理地址:端口

方案2:为Snap服务永久配置代理

Snap由systemd管理,需要修改其服务配置来注入代理环境变量:

  1. 编辑Snap的systemd服务配置文件:
sudo systemctl edit snapd.service
  1. 在打开的编辑器中添加以下内容(替换为你的代理信息):
[Service]
Environment="http_proxy=http://你的代理地址:端口"
Environment="https_proxy=http://你的代理地址:端口"
Environment="no_proxy=localhost,127.0.0.1"
  1. 保存退出后,重新加载systemd配置并重启Snap服务:
sudo systemctl daemon-reload
sudo systemctl restart snapd.service
  1. 再次尝试安装命令:
sudo snap install conjure-up --classic

方案3:排查代理SSL证书问题

如果你的代理使用自签名证书,Snap调用HTTPS接口时会因证书验证失败触发EOF错误:

  • 将代理的CA证书导入系统信任库:
sudo cp /path/to/你的代理CA证书.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
  • 重启Snap服务后重新执行安装命令

方案4:验证代理连通性

先确认代理本身能否正常访问Snapcraft的API:

curl -x http://你的代理地址:端口 https://api.snapcraft.io/v2/snaps/refresh

如果这个命令也返回EOF或连接错误,说明代理本身存在问题(比如端口不通、代理服务器离线、虚拟机防火墙限制等),需要先排查代理的可用性。

内容的提问来源于stack exchange,提问作者Kai

火山引擎 最新活动