自从同时使用Windows和Linux双系统后,面对很多软件都需要开代理数据才可能下载成功,这里总结一下常用软件都在哪里设置会走代理。

Linux最广泛的代理设置方式(系统环境变量设置)

直接在终端输入,每行后回车:

export http_proxy=http://(你的代理地址):代理端口

export https_proxy=http://(你的代理地址):代理端口

注意后面的代理地址如果是IP的话,一定不要在等号后面的http加s,https的加密依赖于域名而不是IP地址, 加上加密,验证错误包代理不成功的(惊讶于很多学计算机的都不知道)

如果你启动的代理服务没有设置验证(用户名和密码不存在),那么把(http://)和(@)之间的部分带上(@)一起去掉就好, 就像以下这种形式:

export http_proxy=http://(你的代理地址):代理端口

export https_proxy=http://(你的代理地址):代理端口

而有些软件包读的是大写的环境变量,那就再接着设置:

export HTTP_PROXY=http://(你的代理地址):代理端口

export HTTPS_PROXY=http://(你的代理地址):代理端口

大多数Linux软件包都严格依照上面的通用规则,但像docker,apt一类会比较独特,要额外设置。

linux中docker的代理设置方式

这里网上有很多临时设置的方法,然而我实测下来很多失效的,所以只提供官方指定的一种全局代理方法:

搜索有没有属于docker的配置文件daemon.json,如果没有就创建/etc/docker/daemon.json,然后输入:

{
 "proxies": {
  "http-proxy": "http://(你的代理地址):代理端口",
  "https-proxy": "http://(你的代理地址):代理端口",
  "no-proxy": "localhost,127.0.0.1,.example.com,192.168.1.0/24"
 }
}

保存后再在终端执行:

sudo systemctl daemon-reload

sudo systemctl restart docker

别忘了将最后(192.168.1.0/24)的部分改为你的内网CIDR,好让内网docker仓库绕过代理。

因为Windows平台的docker仍处于实验性的状态,并且docker在Windows上性能不佳, 本教程只会说明Linux上docker的代理设置方法。

git的代理设置

上GitHub或者其它git仓库时clone或者下载同步非常慢,找镜像源就不如设置代理快了。

git也像docker一样有自己的环境变量,直接终端执行可以查询到:

git config --list

如果是只查看全局配置则命令后(–list)前加上(–global)

如果是要设置代理,则终端执行:

git config --global http.proxy http://(你的代理地址):代理端口

git config --global https.proxy http://(你的代理地址):代理端口

有一说只有http.proxy的设置有用,我也只在官方文档找到了http.proxy,但都设置也好,不会有大影响。