Dockerネットワークとは?
Dockerで使用されるネットワークのこと。
composeファイルでネットワークの設定がありdockerを立ち上げた際にエラーが発生したので、調べてみました。
デフォルトネットワーク
Dockerをインストールした時に三つのDocker Networkがインストールされる。
Noneネットワークについて
ネットワーク接続を必要としないコンテナを作成する場合に使用。
Host
Hostネットワークは、Dockerホストと同じネットワークにスタックするドライバでDockerホストマシンと同じネットワークインターフェース、IPアドレスを持つ。
Bridge
Linux bridge機能を使った、Linux上に別のネットワークを使う方式。
Dockerホストが属するネットワークとは異なる、仮想bridge上のネットワークにコンテナを作成
ユーザー定義のネットワーク
コンテナのより優れた分離のために 自分でユーザー定義ネットワークを作成できる
新しいブリッジネットワークやオーバーレイネットワークを作成できる
最も簡単なユーザー定義ネットワークはブリッジネットワークの作成です
このネットワークの中で起動したコンテナは Dockerホスト上の他のコンテナとは独立しています ネットワーク内の各コンテンツは速やかに通信が可能です しかしコンテナ自身が含まれるネットワークは 外部のネットワークからは独立しています
ユーザー定義ブリッジネットワーク の内部ではリンク機能はサポート されません。
ですがこのネットワーク上にある コンテナのポートは公開可能です ブリッジネットワークの一部を 外のネットワークから使うときに 便利でしょう
ブリッジネットワークは単一ホスト上で比較的小さなネットワークの実行時に便利です。
Overlay network
異なるDockerホスト上に存在するコンテナに対して、同じネットワークに存在するコンテナとして透過的にアクセスすることができる。
- Docker overlay networkは、異なるDockerホスト上のコンテナ間の通信を可能にする強力な機能。
- Dockerネットワークには、それぞれ異なる特徴とユースケースがあるため、用途に応じて適切なネットワークを選択することが重要。
Dockerのオーバーレイネットワーク ドライバーは 複数ホストのネットワーキング にネイティブに対応するものです
Overlay Networkはキーバリューストア サービスが必要です
ネットワークの各ホストはそれぞれでDockerエンジンを動かす必要があります。 最も簡単なのは、Dockerマシンを用いてホストをプロビジョンする方法です。
host間ではUDPとTPCUDPのポートをオープンにすべきです。
複数のホストを横断するネットワークができる
一つのネットワークができるオーバーレイ ネットワークはコンテナに対して 完全なる独立機能を提供する
Discussion