Ubuntu Desktop Docker 配置代理

主要解决 docker pull 拉取不了镜像问题.

Docker Desktop 配置代理

这个比较简单, 直接在 Docker Desktop 里设置 Proxies, 示例如下: http://127.0.0.1:7890

Docker Engine 配置代理

1.Docker Engine 使用下面配置文件即可, root 用户可以正常使用;
2.非 root 用户,如果安装了 docker desktop 需要通过 docker context 切换到 docker engine;

docker pull 是由守护进程 dockerd 执行,因此代理需添加在 dockerd 的 systemd 配置中。

1
sudo mkdir -p /etc/systemd/system/docker.service.d
1
2
# 创建并编辑这个文件
sudo vim /etc/systemd/system/docker.service.d/proxy.conf

添加下面内容,和给 bash 添加代理是类似的。

1
2
3
[Service]
Environment="HTTPS_PROXY=127.0.0.1:7890"
Environment="HTTP_PROXY=127.0.0.1:7890"

重载 systemd 并重启 docker

1
2
sudo systemctl daemon-reload
sudo systemctl restart docker

之后 docker pull 就会走指定的代理了。