proxy環境でDockerを使用するときの設定

2019-07-29

proxy設定が必要な環境のubuntu18.04でDockerを利用する際に行った設定メモ。

aptソースの更新(sudo apt-get update)

まずは「sudo apt-get update」を実施する際に必要な設定。
/etc/apt/apt.confにproxyの記述を追記する(ファイルがない場合は作成する)。

/etc/apt/apt.conf
Acquire::http::proxy "http://proxy_address:port/";
Acquire::https::proxy "http://proxy_address:port/";

Dockerのインストール

公式サイトのインストール手順をを元に実施。
下記のcurlコマンドを実行する際に-xオプションでproxyを指定する。

sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -x http://proxy_address:port/ | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable test edge"
sudo apt-get update
sudo apt-get install docker-ce

dockerコマンド

docker run hello-worldを実行するのにproxy設定が必要。
/etc/systemd/system/docker.service.d/配下に 「http-proxy.conf」、「https-proxy.conf」を作成しproxy情報を記述する。

http-proxy.conf、https-proxy.conf
[Service]
Environment="HTTP_PROXY=http://proxy_address:port/"

設定後、Dockerのリロードを行うとdocker run hello-worldの結果が表示される。

sudo systemctl daemon-reload
sudo systemctl restart docker
sudo docker run hello-world

Dockerfile

構築時にダウンロードが必要な場合は、Dockerfileでもproxy設定が必要。
Dockerfile内で環境変数に設定する場合の例。

Dockerfile
FROM php:7.2-apache

ENV HTTP_PROXY http://proxy_address:port/
ENV HTTPS_PROXY http://proxy_address:port/
■同じタグの記事(最新5件)
DockerでCakePHP3+PostgreSQL環境を構築する
■同じタグの記事を見る