DockerをHTTPプロキシ必須環境の中から使う場合の、プロキシのパスの通し方についてメモ。 これをやっておかないと、docker pullとかがうまくいかない。

Dockerがsystemdで動いているという前提の方式。

まず、root権限で、プロキシパスを通す設定をする。 「<ホスト名>」と「<ポート番号>」は適宜変更する。

# mkdir /etc/systemd/system/docker.service.d

# cat > /etc/systemd/system/docker.service.d/http-proxy.conf <<EOS
[Service]
Environment="HTTP_PROXY=http://<ホスト名>:<ポート番号>/" "HTTPS_PROXY=http://<ホスト名>:<ポート番号>/"
EOS

# systemctl daemon-reload

設定が正しく反映されているか確認する。

# systemctl show --property=Environment docker
Environment=HTTP_PROXY=http://<ホスト名>:<ポート番号>/ HTTPS_PROXY=http://<ホスト名>:<ポート番号>/

最後にDockerプロセスを再起動するとプロキシを見に行くようになる。

# systemctl restart docker