通过Clash配置linux代理

全局代理配置

1
2
3
4
5
6
7
8
9
10
# 编辑配置文件(替换 <Windows_IP> 为实际 IP,如 192.168.1.100)
tee /etc/profile.d/proxy.sh <<EOF
export http_proxy="http://10.0.0.1:7890"
export https_proxy="http://10.0.0.1:7890"
export ftp_proxy="http://10.0.0.1:7890"
export no_proxy="localhost,127.0.0.1,::1,.cluster.local,.svc,10.0.0.0/8"
EOF

# 立即生效
source /etc/profile

配置apt包管理器代理

1
2
3
4
sudo tee /etc/apt/apt.conf.d/proxy.conf <<EOF
Acquire::http::Proxy "http://10.0.0.1:7890";
Acquire::https::Proxy "http://10.0.0.1:7890";
EOF

配置 YUM 包管理器代理

1
echo "proxy=http://10.0.0.1:7890" | sudo tee -a /etc/yum.conf

测试全局代理

1
2
3
4
5
6
7
8
# 测试 HTTP
curl -v http://example.com

# 测试 HTTPS(应返回 200)
curl -v https://www.google.com

# 测试系统工具
sudo apt update # 应通过代理更新

docker守护进程代理

1
2
3
4
5
6
7
8
9
10
11
12
13
mkdir -p /etc/systemd/system/docker.service.d
tee /etc/systemd/system/docker.service.d/http-proxy.conf <<EOF
[Service]
Environment="HTTP_PROXY=http://10.0.0.1:7890"
Environment="HTTPS_PROXY=http://10.0.0.1:7890"
Environment="NO_PROXY=localhost,127.0.0.1,::1,.cluster.local,.svc,10.0.0.0/8"
EOF
systemctl daemon-reload
systemctl restart docker

#验证配置
docker info | grep -i proxy # 查看代理是否生效
docker pull alpine # 测试拉取镜像