LoginSignup
1
3

More than 1 year has passed since last update.

DockerとDocker Composeをproxy環境下で使用する

Last updated at Posted at 2022-12-01

DockerとDocker Composeをproxy環境下で使用するための設定をまとめる。

環境

  • Ubuntu: 20.04
  • Docker: 20.10.21
  • Docker Compose: 2.4.1

Dockerの設定

1. systemdに環境変数を設定する

/etc/systemd/system/docker.service.d/override.confに下記を書き込む。

/etc/systemd/system/docker.service.d/override.conf
[Service]
Environment = 'http_proxy=<proxy_url>:<port>' 'https_proxy=<proxy_url>:<port>'

2. Dockerクライアントの設定

ユーザのホームディレクトリ内で ~/.docker/config.jsonを作成する。

~/.docker/config.json
{
  "proxies": {
    "default": {
      "httpProxy": "<proxy_url>:<port>",
      "httpsProxy": "<proxy_url>:<port>",
      "noProxy": "<no_proxy_url>"
    }
  }
}

Docker Composeの設定

1. docker-compose.ymlの設定

docker-compose.ymlに下記を追記する。

docker-compose.yml
services:
  test:
    build:
      context: .
      args:
        - HTTP_PROXY=$HTTP_PROXY
        - http_proxy=$http_proxy
        - HTTPS_PROXY=$HTTPS_PROXY
        - https_proxy=$https_proxy
        - NO_PROXY=$NO_PROXY
        - no_proxy=$no_proxy
    environment:
      - HTTP_PROXY=$HTTP_PROXY
      - http_proxy=$http_proxy
      - HTTPS_PROXY=$HTTPS_PROXY
      - https_proxy=$https_proxy
      - NO_PROXY=$NO_PROXY
      - no_proxy=$no_proxy

2. .envの設定

docker-compose.ymlと同じ階層に、.envを作成する。

.env
HTTP_PROXY=<proxy_url>:<port>
http_proxy=<proxy_url>:<port>
HTTPS_PROXY=<proxy_url>:<port>
https_proxy=<proxy_url>:<port>
NO_PROXY=<no_proxy_url>
no_proxy=<no_proxy_url>

参考

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3