docker配置代理

little小新發表於2024-07-10

docker配置代理

老方法配置 proxy.conf (親測有效-需要魔法)

  1. 建立配置檔案目錄
mkdir -p /etc/systemd/system/docker.service.d
  1. 建立配置檔案
  • 注意:HTTP_PROXY和HTTPS_PROXY 是你的梯子所在的主機的ip和埠
cat > /etc/systemd/system/docker.service.d/proxy.conf <<EOF
[Service]
Environment="HTTP_PROXY=http://192.168.1.111:7890/" 
Environment="HTTPS_PROXY=http://192.168.1.111:7890/"
Environment="NO_PROXY=localhost,127.0.0.1,hub.docker.com,registry.aliyuncs.com"
EOF
  1. 如果是clash的需要開啟 Allow LAN

  2. 重啟docker

systemctl daemon-reload && systemctl restart docker
systemctl show --property=Environment docker    # 檢視配置

新方法

對config.json 檔案進行修改

mkdir -p ~/.docker
cat > ~/.docker/config.json <<EOF
{
 "proxies":
 {
   "default":
   {
     "httpProxy": "http://192.168.3.3:8889",
     "httpsProxy": "http://192.168.3.3:8889",
     "noProxy": "127.0.0.1,docker.io,hub.docker.com,hub-mirror.c.163.com,pvjhx571.mirror.aliyuncs.com"
   }
 }
}
EOF

將 "httpProxy" 和 "httpsProxy" 的值替換為你的代理伺服器地址和埠。
注意:"noProxy": 指定不需要使用代理的地址列表,通常包括本地地址。

使用國外的docker映象源

注意需要魔法
如果需要將 Docker 映象下載代理到國外 Docker 官網或其他國外映象源,可以使用以下方法:
在 daemon.json 中配置如下:

{
  "registry-mirrors": ["https://your-registry-mirror-url"]
}

相關文章