为 Ubuntu Server 内通过 Snap 安装的 Docker 配置代理

无心戈1 分钟阅读

通过 Snap 安装的 Docker 服务配置文件位于 /etc/systemd/system/snap.docker.dockerd.service,内容如下:

[Unit]
# Auto-generated, DO NOT EDIT
Description=Service for snap application docker.dockerd
Requires=snap-docker-2976.mount
Wants=network.target
After=snap-docker-2976.mount network.target snapd.apparmor.service
X-Snappy=yes

[Service]
EnvironmentFile=-/etc/environment
ExecStart=/usr/bin/snap run docker.dockerd
SyslogIdentifier=docker.dockerd
Restart=on-failure
WorkingDirectory=/var/snap/docker/2976
TimeoutStopSec=30
Type=simple
Delegate=true

[Install]
WantedBy=multi-user.target

可以[Service]下增加如下环境变量:

Environment="HTTP_PROXY=http://proxy-host:1234/"
Environment="HTTPS_PROXY=http://proxy-host:1234/"

由于/etc/systemd/system/snap.docker.dockerd.service配置文件中通过EnvironmentFile=-/etc/environment属性,引入了/etc/environment内的环境变量,故也可以在/etc/environment中增加如下参数:

HTTP_PROXY=http://proxy-host:1234/
HTTPS_PROXY=http://proxy-host:1234/

Tips: Ubuntu Server 内配置代理方法对 Docker 代理配置无效,既对拉取镜像无效,也对容器内应用无效。