Docker daemon にプロキシを設定する手順です。プロキシ環境では、Docker CLI ではなく daemon 側に proxy を設定しないと、イメージ pull などが外部へ到達できないことがあります。
参考
書籍
書籍
参考書籍
Kubernetes完全ガイド 第2版
Kubernetes、コンテナ、クラスタ運用、ネットワークまわりを体系的に確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
systemd drop-in で設定する
サービスファイル本体を直接編集するのではなく、drop-in ファイルを作成します。これによりパッケージ更新時の差分管理が楽になります。
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo tee /etc/systemd/system/docker.service.d/proxy.conf <<'EOF'
[Service]
Environment="HTTP_PROXY=http://proxy.example.local:3128"
Environment="HTTPS_PROXY=http://proxy.example.local:3128"
Environment="NO_PROXY=localhost,127.0.0.1,192.168.0.0/16"
EOF反映
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl show --property=Environment docker確認
docker pull nginx:latest
docker info | grep -i proxyまとめ
Docker の proxy 設定は、サービスファイル直編集ではなく systemd drop-in で管理するのが扱いやすいです。`NO_PROXY` には内部レジストリや Kubernetes ノードなど、プロキシを通したくない宛先を忘れずに入れます。
Docker プロキシ設定 – systemd drop-in で daemon に proxy を設定する




