Docker配置代理访问网络ubuntu24.04

本文将详细介绍如何根据系统代理配置,正确设置 Docker 的代理环境变量,使其能够通过代理服务器进行网络访问。

一、查看系统代理配置

首先,我们查看了系统的代理配置:

以下是图片内容的文字描述:

Proxy 设置

  • Network Proxy: 已开启
  • Configuration: 手动 (Manual)

HTTP Proxy

  • URL: 127.0.0.1
  • Port: 20171

HTTPS Proxy

  • URL: (未填写)
  • Port: 0

FTP Proxy

  • URL: (未填写)
  • Port: 0

SOCKS Host

  • URL: 127.0.0.1
  • Port: 20170

Ignored Hosts

  • localhost, 127.0.0.0/8, ::1

根据配置界面,可以看到:

  • Network Proxy: 已经启用。
  • HTTP Proxy: 代理服务器地址是 127.0.0.1,端口是 20171
  • SOCKS Host: 代理服务器地址是 127.0.0.1,端口是 20170

为了确保 Docker 可以通过该代理进行网络访问,我们需要将这些配置应用到 Docker 的环境变量中。

二、为 Docker 配置代理

1. 创建 Docker 代理配置目录

首先,为 Docker 服务创建一个代理配置目录(如果不存在):

sudo mkdir -p /etc/systemd/system/docker.service.d

2. 创建并编辑 http-proxy.conf 配置文件

使用 vim 或其他编辑器创建并编辑 /etc/systemd/system/docker.service.d/http-proxy.conf 文件:

sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf

在文件中添加以下内容,根据系统代理设置进行了详细配置:

[Service]
Environment="HTTP_PROXY=http://127.0.0.1:20171/"
Environment="HTTPS_PROXY=http://127.0.0.1:20171/"
Environment="NO_PROXY=localhost,127.0.0.0/8,::1"

配置说明:

  • HTTP_PROXY:指定 HTTP 代理地址,使用 127.0.0.1:20171,与系统代理设置一致。
  • HTTPS_PROXY:指定 HTTPS 代理地址,仍然使用 127.0.0.1:20171,确保 Docker 可以通过代理进行 HTTPS 请求。
  • NO_PROXY:指定不需要通过代理的地址列表,包括本地主机 localhost127.0.0.0/8 和 IPv6 本地地址 ::1

3. 重新加载 systemd 并重启 Docker 服务

配置完成后,重新加载 systemd 配置,并重启 Docker 服务,使更改生效:

sudo systemctl daemon-reload
sudo systemctl restart docker

4. 验证代理配置是否生效

使用以下命令验证 Docker 是否正确使用了代理设置:

docker info | grep -i proxy

如果配置成功,你应该会看到类似以下的输出:

 HTTP Proxy: http://127.0.0.1:20171/
 HTTPS Proxy: http://127.0.0.1:20171/
 No Proxy: localhost,127.0.0.0/8,::1

四、使用

通过上述步骤,我们成功将系统代理设置应用到了 Docker 中,使得 Docker 可以通过指定的代理服务器进行网络访问。在复杂网络环境中,这种配置可以有效地解决 Docker 访问网络超时、无法连接 Docker Hub 等问题。

进而我们可以正常使用 docker 命令而不用担心网络问题了:

docker search nvidia/cuda:12.4.1-cudnn-devel-ubuntu22.04
docker image pull nvidia/cuda:12.4.1-cudnn-devel-ubuntu22.04
posted @   溺死在幸福里的猪  阅读(564)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示