debian12 中安装了 docker,由于一些为你好的原因,死活拉取不了镜像,一直超时。第一次在 Linux 环境下配置 clash,踩了一些坑,记录一下,供遇到相同问题的参考。
拉取项目
git clone https://github.com/wnlen/clash-for-linux.git clash-for-linux
编辑 .env 文件,将 CLASH_URL 变量替换为订阅链接,将 CLASH_SECRET 替换为自定义的密码。
运行启动脚本
chmod +x start.sh
./start.sh
开启代理
source /etc/profile.d/clash.sh
proxy_on
检查环境变量
env | grep -E 'http_proxy|https_proxy'
http_proxy=http://127.0.0.1:7890
https_proxy=http://127.0.0.1:7890
以上步鄹如果正常,说明服务clash程序启动成功。
重启程序
如果需要对Clash配置进行修改,请修改 conf/config.yaml
文件。然后运行 restart.sh
脚本进行重启。
注意: 重启脚本 restart.sh
不会更新订阅信息。
关闭服务
sudo bash shutdown.sh
关闭代理
proxy_off
访问 http://ip:9090/ui 登录管理界面,可以选择节点等。
配置好代理之后,发现还是连不上 docker hub,拉取镜像还是超时。虽然在 clash 管理界面中配置了全局代理,但是还需要在 docker 中单独配置一下。
配置 docker 优先使用 ipv4,修改 /etc/daemon.json 如下:
{
"ipv6": false,
"fixed-cidr-v6": "2001:db8:1::/64", # 值不影响
"experimental": false
}
然后配置 systemd:
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf
文件内容如下:
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7890"
Environment="HTTPS_PROXY=http://127.0.0.1:7890"
重启服务
sudo systemctl daemon-reload
sudo systemctl restart docker
执行 docker search hello-world
测试一下吧!
参考: