doodle-on-web

自分で調べたことや、仕事の中で質問されたことなどをまとめています。

Docker for Windowsのtutrialをproxy環境で実行する

スポンサーリンク

Docker for Windowsのtutrialをproxy環境で実行する

tutorialを実行するためには、Dockerで使用するコマンドすべてにproxy設定をしましょう!

設定が必要なコマンド一覧(登場順)

  1. docker
  2. git
  3. pip
  4. yarn
  5. apk

各コマンドの設定箇所

docker

  • 右上の歯車アイコンをクリックし、Resources内のPROXIESを選択します。
  • 以下のプロキシ設定を入力し、Apply & Restartをクリックします。
    • 以降の項目では、すべて以下のものを入力するとします。

http://<user>:<password>@<your-proxy>:<proxy-port>/ ※認証付きでない場合は<user>:<password>@を外す。

f:id:doodle-on-web:20200826114218p:plain
docker proxy 設定画面

git

docker tutrialはpowershellで実行するため、powershellにproxyの設定をする必要があります。

起動時に以下のコマンドを実行してください。

$env:http_proxy="http://<user>:<password>@<your-proxy>:<proxy-port>"
$env:https_proxy="http://<user>:<password>@<your-proxy>:<proxy-port>"

pip

pipコマンド以下は上記gitコマンドにてステップ1の実行が終わった後で対象のファイルを編集する必要があります。

編集するファイルはgit cloneしたgetting-started内にあるDockerfileになります。

Dockerfileのpip install コマンドの後ろにproxyの設定を追記してください。

上で環境変数設定しているのですが、それだけでは足りなかった模様。。。

WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt

上記を下記のように修正してください。

WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt --proxy http://<user>:<password>@<your-proxy>:<proxy-port>

yarn

こちらのpip同様、Dockerfileに記載があるので、RUN yarn installの前ににproxyの設定を追記してください。

# Run tests to validate app
FROM node:12-alpine AS app-base
WORKDIR /app
COPY app/package.json app/yarn.lock ./
RUN yarn config set https-proxy http://<user>:<password>@<your-proxy>:<proxy-port> -g
RUN yarn config set proxy http://<user>:<password>@<your-proxy>:<proxy-port> -g
RUN yarn install
COPY app/spec ./spec
COPY app/src ./src
RUN yarn test

apk

# Clear out the node_modules and create the zip
FROM app-base AS app-zip-creator
RUN rm -rf node_modules && \
    apk add zip && \
    zip -r /app.zip /app

こちらはdockerfileの環境変数が有効であったため、実行前に環境変数を追記してやります。

ENV http_proxy http://<user>:<password>@<your-proxy>:<proxy-port>
ENV https_proxy http://<user>:<password>@<your-proxy>:<proxy-port>

# Clear out the node_modules and create the zip
FROM app-base AS app-zip-creator
RUN rm -rf node_modules && \
    apk add zip && \
    zip -r /app.zip /app

以上で、tutorialが実行できる・・・はずです。