docker配置代理,高速下载资源

301 阅读1分钟

由于网络的问题,在国内使用docker有诸多不便。 最近掌握了两种方法,可以配置docker代理。在国内也可以高速下载。

  1. docker pull 这里可以使用docker镜像,在/etc/docker/daemon.json文件里面加入
  {
       "registry-mirrors": [
           "https://docker-0.unsee.tech",
           "https://docker-cf.registry.cyou",
           "https://docker.1panel.live"
       ]
  }
  1. docker build 我在下载一些开源的项目的时候,Dockerfile里面总是会有很多国外的源。哪怕在本地配置了代理,实际上在docker build的时候也不会自动走代理。于是我在网上找到了可以通过配置--build-arg HTTP_PROXY="http://host:port的方式使用宿主机的代理。 于是我就使用如下指令:
docker build . \                  
  --build-arg HTTP_PROXY="http://127.0.0.1:7890" \    # 7890是代理端口号
  --build-arg HTTPS_PROXY="http://127.0.0.1:7890" \
  -t xxx

意外的,还是失败了。显示拒绝连接。 接下来我尝试

curl -x http://本地ip:7890 http://www.google.com

发现竟然不能访问。于是我知道问题在哪里了。 我的clash走的是localhost,也就是127.0.0.1,只能被本地访问。 应该使用0.0.0.0。 在clash的配置文件config.yaml中修改

mixed-port: 7890 
bind-address: 0.0.0.0 
allow-lan: true 

最后成功解决。 希望这篇文章可以帮到遇到同样问题的你!