Dockerに関するドキュメントを参照する

Docker のプロキシーの設定をする方法や、Dockerfileへのプロキシの記述方法など Dockerを社内で使う上で基本となる項目について解説します。

会社内でDockerを使用する際にはよくプロキシに引っかかるのでご注意ください。

Docker入門 関連記事

Docker for Desktopでのプロキシの設定方法( windows, mac 環境の方)

会社で使用するPCにはプロキシーの制限が課されている場合があります。

その場合、 Docker はそのままでは起動できません。プロキシーの設定を行うことで初めて実行可能となります。

1. docker for desktop を起動する

2. docker for desktop の設定を開く

右上の歯車アイコンからdocker for desktopの設定を開きましょう

3. Resources > Proxies の設定を開く

Resources > Proxies からプロキシの設定を開きましょう

4. manual config を押下

5. docker for desktopのプロキシを設定する

linux 内部の docker engin のプロキシーの設定( linux 環境の方)

Docker for Desktopを使わない場合、~/.docker/config.jsonへ プロキシーの設定内容を記述する必要があります。

適宜<proxy_url>を社内プロキシーurlに置き換えて設定を変更してください。

また、変更後はdocker enginの再起動が必要となりますのでご注意ください。

{

 "proxies":

 {

   "default":

   {

     "httpProxy": "<proxy_url>",

     "httpsProxy": "<proxy_url>",

     "noProxy": ""

   }

 }

}

Dockerfile へのプロキシの設定方法

Dockerfile を記述する際にもプロキシーの設定を書き込む必要があります。

具体的には次の内容をDockerfileに追記してください。

# 環境変数の変更

ENV HTTP_PROXY="<proxy_url>"

ENV HTTPS_PROXY="<proxy_url>"

ENV FTP_PROXY="<proxy_url>"

ENV http_proxy="<proxy_url>"

ENV https_proxy="<proxy_url>"

ENV ftp_proxy="<proxy_url>"



# RUNを使った環境変数の変更

RUN set HTTP_PROXY="<proxy_url>"

RUN set HTTPS_PROXY="<proxy_url>"

RUN set FTP_PROXY="<proxy_url>"

RUN set http_proxy="<proxy_url>"

RUN set https_proxy="<proxy_url>"

RUN set ftp_proxy="<proxy_url>"

docker run のオプションでプロキシを設定する

本番サーバー、開発用サーバー、ローカル環境でプロキシーが異なり、プロキシの向き先を変更しなければならない場合、 Dockerfile に記述して対応する方法は柔軟性に欠けます。

なぜならば、基本的にDockerfileの内容は変更することができず、一度イメージがビルドされてしまえば上書きで対応するしか方法がありません。

そこで、docker runのオプションに環境変数を設定することで、dockerコンテナの起動時にプロキシを設定しましょう。

docker runのオプションに以下の内容を追記してください。

docker run --env HTTP_PROXY="<proxy_url>" --env HTTP_PROXY="<proxy_url>" <イメージ名> <コマンド>