Docker ネットワークは通信の信頼ゾーン定義します。信頼ゾーンでは、そのネットワーク内にあるコンテナー間の通信が制限されません。
各ネットワークは、ホストのブリッジ・インターフェースに関連付けられています。そしてこれらのインターフェース間のトラフィックをフィルターに掛けるためのファイアウォール・ルールが定義されています。 通常、同じ Docker ネットワークとホスト・ブリッジ・インターフェースを共有するゾーン内のコンテナーは、相互に通信できます。 この一般規則の例外として、アプリケーションは同じ
dockerApps ネットワーク上で実行されますが、ファイアウォールによって相互に分離されていることになります。
- Docker インターフェース
- Docker インターフェースの例を表示するには、以下のコマンドを入力します。
docker network
ls
- 出力の例を以下に示します。
[root@q1dk00 ~]# docker network ls
NETWORK ID NAME DRIVER SCOPE
943dd35a4747 appProxy bridge local
9e2ba36111d1 dockerApps bridge local
514471d98b42 dockerInfra bridge local
dockerApps インターフェースは、アプリケーション間の通信にルールを適用するために使用します。
appProxy インターフェースは、 nginx_framework_apps_proxy コンテナーを表示します。
dockerInfra インターフェースは、 service launcher および qoauthのホストとして使用されます。 アプリケーションは、ほとんどのインフラストラクチャー・コンポーネントから分離されていますが、機密情報および許可を管理するには、 service launcher および qoauth に接続できる必要があります。
- Docker インターフェースに関する情報
- 以下のコマンドを入力して Docker インターフェースに関する情報を取得します。
ドッカー検査 <docker_container_ID> | grep NetworkMode
- 出力の例を以下に示します。
"NetworkMode": "appProxy"
-
この例は、 ドッカー検査 <docker_container_ID> コマンドを使用して より少ない にパイプを使用して、さらにネットワークの詳細を表示する方法を示しています。
docker inspect d9b3e58649de | less
- 出力の例を以下に示します。
"Networks": {
"dockerApps": {
"IPAMConfig": null,
"Links": null,
"Aliases": [
"d9b3e58649de"
], "NetworkID":
"79bc4716da5139a89cfa5360a3b72824e67701523768822d11b53caeaa5e349e",
"EndpointID":
"9dba9d9a174b037f72333945b72cdf60c3719fdb9a3a10a14a8ee3cc0e92a856",
"Gateway": "172.18.0.1",
"IPAddress": "172.18.0.2",
"IPPrefixLen": 16,
"IPv6Gateway": "2003:db8:1::1",
"GlobalIPv6Address": "2003:db8:1::2",
"GlobalIPv6PrefixLen": 64,
"MacAddress": "02:42:ac:12:00:02"
}
この例の出力は、指定されたコンテナー (d9b3e58649de) によって使用されるネットワークの構成を示しており、 Docker ネットワーク・インターフェース名 (dockerApps) と、 Docker コンテナーに割り当てられているネットワークの IP アドレスを表示します。