1. 配置 Docker 守护进程代理

  • 创建配置文件目录:

    sudo mkdir -p /etc/systemd/system/docker.service.d
  • 创建配置文件:

    sudo touch /etc/systemd/system/docker.service.d/http-proxy.conf
  • 编辑配置文件,添加以下内容:

    [Service]
    Environment="HTTP_PROXY=http://your_proxy_address:port/"
    Environment="HTTPS_PROXY=http://your_proxy_address:port/"
    Environment="NO_PROXY=localhost,127.0.0.1"

    your_proxy_address:port 替换为实际的代理地址和端口。

  • 重新加载并重启 Docker:

    sudo systemctl daemon-reload
    sudo systemctl restart docker
  • 验证配置是否生效:

    systemctl show --property=Environment docker

2. 配置 Docker 客户端代理

  • 创建或编辑配置文件:

    mkdir -p ~/.docker
    nano ~/.docker/config.json
  • 添加以下内容:

    {
      "proxies": {
        "default": {
          "httpProxy": "http://your_proxy_address:port",
          "httpsProxy": "http://your_proxy_address:port",
          "noProxy": "localhost,127.0.0.1"
        }
      }
    }

    your_proxy_address:port 替换为实际的代理地址和端口。

  • 验证配置是否生效:

    docker info | grep -i proxy

3. 容器内部代理设置

  • 运行时临时指定代理

    docker run -e HTTP_PROXY="http://your_proxy_address:port" \
               -e HTTPS_PROXY="http://your_proxy_address:port" \
               -it ubuntu bash
  • 在 Dockerfile 中设置代理

    ENV HTTP_PROXY="http://your_proxy_address:port"
    ENV HTTPS_PROXY="http://your_proxy_address:port"
    ENV NO_PROXY="localhost,127.0.0.1"
  • 全局设置(Docker CLI 配置)
    与 Docker 客户端配置相同,所有新容器自动使用代理。

4. 其他代理设置

  • 使用代理脚本

    bash -c "$(curl -sSLf https://xy.ggbond.org/xy/docker_pull.sh)" -s 参数1:完整镜像名 参数2:代理文件路径(可选项)

    其中,代理文件路径是指存放 docker_mirrors.txt 文件的目录,如果不填写默认创建 /etc/xiaoya 目录,并自动在该目录生成 docker_mirrors.txt 文件。

  • 构建镜像时使用代理

    docker build --build-arg http_proxy=http://your_proxy_address:port --build-arg https_proxy=http://your_proxy_address:port -t image_name .
  • 容器与宿主机共享网络时使用代理
    创建容器时使用 --network=host 参数,然后在容器内设置代理:

    export ALL_PROXY='socks5://127.0.0.1:port'
  • 映射代理端口后使用
    docker run 时带参数 -p 映射代理的端口到容器,然后在容器内使用:

    docker run -p 1080:1080 .....
    export ALL_PROXY='socks5://127.0.0.1:1080'
最后修改:2026 年 03 月 10 日
如果觉得我的文章对你有用,请随意赞赏