Featured image of post 常用软件代理设置

常用软件代理设置

有的软件依赖环境变量,有的是写在了特定的配置文件中,本文对一些常用的软件代理设置进行了总结

docker

  1. 设置容器内的网络

    vim ~/.docker/config.json
    

    写入如下配置信息

    {
     "proxies":
     {
       "default":
       {
         "httpProxy": "http://127.0.0.1:3001",
         "httpsProxy": "http://127.0.0.1:3001",
         "noProxy": "*.test.example.com,.example2.com"
       }
     }
    }
    

    详细文档:https://docs.docker.com/network/proxy/

  2. 设置容器客户端的网络

先创建一个docker service的目录

sudo mkdir -p /etc/systemd/system/docker.service.d

新建一个http代理文件

vim /etc/systemd/system/docker.service.d/http-proxy.conf 

写入如下信息

[Service]
Environment="HTTP_PROXY=http://proxy.example.com:80/"

如果想要设置https代理,同http一样,创建一个https-proxy.conf,然后写入相关的https代理信息

[Service]
Environment="HTTPS_PROXY=https://proxy.example.com:443/"

然后刷新更改并重启docker

sudo systemctl daemon-reload
sudo systemctl restart docker

检查是否配置成功

systemctl show --property=Environment docker

若出现以下信息则成功

Environment=HTTP_PROXY=http://proxy.example.com:8080/

snapd

sudo systemctl edit snapd.service

写入

[Service]
Environment=http_proxy=http://proxy:port
Environment=https_proxy=http://proxy:port

保存后重新加载

sudo systemctl daemon-reload
sudo systemctl restart snapd.service

git

git config --global http.proxy http://proxyUsername:proxyPassword@proxy.server.com:port

这时查看~/.gitconfig就会发现多了

[http]
	proxy = ****
详细文档:https://docs.docker.com/network/proxy/

##### 设置docker客户端下的网络

先创建一个docker service的目录

```shell
sudo mkdir -p /etc/systemd/system/docker.service.d

新建一个http代理文件

vim /etc/systemd/system/docker.service.d/http-proxy.conf 

写入如下信息

[Service]
Environment="HTTP_PROXY=http://proxy.example.com:80/"

如果想要设置https代理,同http一样,创建一个https-proxy.conf,然后写入相关的https代理信息

[Service]
Environment="HTTPS_PROXY=https://proxy.example.com:443/"

然后刷新更改并重启docker

sudo systemctl daemon-reload
sudo systemctl restart docker

检查是否配置成功

systemctl show --property=Environment docker

若出现以下信息则成功

Environment=HTTP_PROXY=http://proxy.example.com:8080/

snapd

sudo systemctl edit snapd.service

写入

[Service]
Environment=http_proxy=http://proxy:port
Environment=https_proxy=http://proxy:port

保存后重新加载

sudo systemctl daemon-reload
sudo systemctl restart snapd.service

curl

格式为:

-x, --proxy [protocol://]host[:port] 

示例:

# http proxy
curl -x "http://user:pwd@192.168.0.1:8080" "http://google.com"

# socks5 proxy
curl -x "socks5:192.168.0.1:8080" "http://google.com"