Proxy環境で使う - Linux
Dockerデーモン側の設定
- プロキシ環境でDockerを使うには、docker pullなどする時にDockerデーモンがプロキシを使うように設定しないといけない
dockerd起動時に環境変数でプロキシを渡す
/etc/default/docker
export HTTP_PROXY="http://proxy.example.com:8080"
export HTTPS_PROXY="http://proxy.example.com:8080"
- 上はUbuntu20.04の例
- いずれのディストリビューションにせよ、dockerd起動時に環境変数でプロキシを渡す
- Ubuntu 20.04の場合は/etc/default/dockerだが、他のディストリビューションでは異なる
設定の確認
$ docker info | grep -i proxy
HTTP Proxy: http://proxy.example.com:8080
HTTPS Proxy: http://proxy.example.com:8080
プロキシが動作しているか確認
$ docker pull hello-world
Dockerクライアント側の設定
- Dockerコンテナがプロキシを通してインターネットにアクセスするように、Dockerクライアント側の設定が必要
方法 1 ~/.docker/config.json
{
"proxies":
{
"default":
{
"httpProxy": "http://192.168.1.12:3128",
"httpsProxy": "http://192.168.1.12:3128",
"noProxy": "*.test.example.com,.example2.com,127.0.0.0/8"
}
}
}
方法 2 環境変数
docker run --env HTTP_PROXY="http://proxy.foo.com:8080" -it alpine /bin/bash
参考
https://docs.docker.jp/network/proxy.html