ホームページ >運用・保守 >Docker >Docker 接続用のプロキシを設定する方法

Docker 接続用のプロキシを設定する方法

PHPz
PHPzオリジナル
2023-04-10 14:19:1011211ブラウズ

Docker は、アプリケーションをオペレーティング システム レベルで分離して実行できるようにする人気のコンテナ化プラットフォームであり、移植性と信頼性が向上します。ただし、ネットワーク環境などの理由により、正常に動作させるためにDocker接続にプロキシを設定する必要がある場合があります。この記事では、Docker 接続用のプロキシを設定する方法について説明します。

  1. Docker デーモン エージェントの設定

Docker デーモンは Docker のコア コンポーネントであり、コンテナーやイメージなどのリソースのライフ サイクルの管理を担当します。 Docker デーモンのプロキシを設定するには、Docker 構成ファイル /etc/docker/daemon.json を編集し、httpProxy フィールドと httpsProxy フィールドを追加する必要があります。 :

{
  "proxies": {
    "default": {
      "httpProxy": "http://proxy.hostname:port",
      "httpsProxy": "http://proxy.hostname:port"
    }
  }
}

このうち、httpProxy は HTTP プロキシ アドレス、httpsProxy は HTTPS プロキシ アドレスです。プロキシで認証が​​必要な場合は、proxyUsername フィールドと proxyPassword フィールドを追加できます。

編集が完了したら、Docker デーモンを再起動して有効にします。

$ sudo systemctl restart docker
  1. Docker クライアント エージェントを設定します

Docker デーモンに加えて、Docker クライアント エージェントを設定します。 、Docker クライアントの動作を設定する必要もあります。 Linux および macOS システムでは、環境変数を使用してプロキシを設定できます:

$ export HTTP_PROXY=http://proxy.hostname:port
$ export HTTPS_PROXY=http://proxy.hostname:port

Windows システムでは、Docker Desktop 設定でプロキシを追加できます:

  1. Docker デスクトップ アイコン 、 [設定] を選択します。
  2. [プロキシ]パネルをクリックします。
  3. [HTTP プロトコルと HTTPS プロトコルの両方に同じプロキシ サーバーを使用する] オプションをオンにして、プロキシ アドレスとポート番号を入力します。
  4. [適用して再起動] ボタンをクリックして、設定を有効にします。
  5. Docker Compose を使用したプロキシのセットアップ

Docker Compose は Docker のもう 1 つの重要なコンポーネントであり、ユーザーは YAML ファイルを通じて複数の Docker コンテナーの関係と構成を定義できます。同様に、Docker Compose のプロキシを設定するには、構成ファイルに環境変数を追加する必要があります。

services:
  my-service:
    environment:
      - HTTP_PROXY=http://proxy.hostname:port
      - HTTPS_PROXY=http://proxy.hostname:port

上記の例では、my-service は Docker コンテナです。環境変数から取得されるプロキシ アドレスとポート番号を読み取ります。

  1. 結論

Docker 接続用のプロキシを設定すると、制限されたネットワーク環境でもアプリケーションが適切に実行されるようになります。 Docker デーモン、Docker クライアント、Docker Compose のいずれにおいても、簡単な設定でプロキシ設定を実現できます。プロキシを設定するときは、プロキシのアドレスとポート番号が正しいかどうか、およびプロキシが認証を必要とするかどうかに注意する必要があります。

以上がDocker 接続用のプロキシを設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。