1. コンテナ相互接続を実現するためにネットワークをカスタマイズする
–net=bridge これはデフォルト値であり、デフォルトのブリッジに接続します。 –net=host は、コンテナ ネットワークを分離された名前空間に配置しないように、つまりコンテナ内のネットワークをコンテナ化しないように Docker に指示します。この時点で、コンテナはローカル ホストのネットワークを使用し、ローカル ホスト インターフェイスに完全にアクセスできます。コンテナ プロセスは、ホスト上の他のルート プロセスと同様に低範囲ポートを開き、D-bus などのローカル ネットワーク サービスにアクセスし、ホストの再起動など、ホスト システム全体に影響する操作をコンテナが実行できるようにすることができます。したがって、このオプションは慎重に使用してください。 --privileged=true をさらに使用すると、コンテナはホストのネットワーク スタックを直接構成できるようになります。 –net=container:NAME_or_ID は、新しく作成されたコンテナ プロセスを既存のコンテナのネットワーク スタックに配置するように Docker に指示します。新しいコンテナ プロセスには独自のファイル システム、プロセス リスト、およびリソース制限がありますが、IP アドレスやポートなどのネットワーク リソースは既存のコンテナと共有されます。2 つのプロセスは、lo ループバック インターフェイスを介して直接通信できます。 –net=none は、Docker に新しいコンテナを分離されたネットワーク スタックに配置するように指示しますが、ネットワーク構成は行いません。その後はユーザーが自分で設定できます。
# --driver bridge ブリッジモード# --subnet 192.168.0.0/16 サブネットセグメント# --gateway 192.168.0.1 ゲートウェイ# mynet ネットワーク namedocker ネットワーク作成 --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet カスタマイズされたネットワーク情報を表示します。 docker ネットワーク検査 mynet
docker run -d -P --name tomcat01-net-01 --net mynet tomcat docker run -d -P --name tomcat01-net-02 --net mynet tomcat カスタム ネットワーク情報を再度確認します。新しく作成された 2 つのコンテナーがネットワークに追加されていることがわかります。
tomcat01-net-01 が tomcat01-net-02 に ping を送信します: tomcat01-net-02 が tomcat01-net-01 に ping を送信します: これで、コンテナは --link を使用せずに相互に ping を実行できるようになり、コンテナは相互に通信できるようになります。 2. ネットワーク接続
tomcat01 と tomcat02 の 2 つのコンテナを作成します。 docker run -d -P --name tomcat01 tomcat docker run -d -P --name tomcat02 tomcat 当然ですが、直接 ping を実行することはできません。まず tomcat01 コンテナを mynet ネットワークに接続する必要があります。
docker network connect コマンドは、docker コンテナをネットワークに接続するために使用されます。コンテナ名またはコンテナ ID を使用できます。 使用法: docker network connect [オプション] ネットワークコンテナ tomcat01 コンテナを mynet ネットワークに接続します。 docker ネットワーク接続 mynet tomcat01 mynet のネットワーク情報を表示します: docker inspect mynet tomcat01 はすでに mynet ネットワークに接続されており、tomcat01-net-tomcat01 および tomcat01-net-tomcat02 も同様です。 この時点で、tomcat01 は mynet ネットワーク内の 2 つのコンテナに接続されています。3 つのコンテナは同じネットワーク内にあるため、当然相互に通信できます。
tomcat01 のメタデータを表示します: docker inspect tomcat01 tomcat01 がカスタム mynet ネットワークに接続されると、2 つのネットワークが存在します。 Docker でのカスタム ネットワーク実装に関するこの記事はこれで終わりです。Docker ネットワークに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
序文MySQL に精通している読者は、MySQL が非常に迅速に更新されることに気付くかもしれません...
まあ、あなたはデザインの達人かもしれませんし、あるいはそれは大げさすぎるかもしれませんが、少なくとも...
本日、会社の内部サーバーにログインしたところ、リモートアクセスができませんでした。エラー メッセージ...
目次環境条件エラーが発生しました回避策1. mysql dockerにログインする2. ルートパスワ...
目次マウスジョイント マウスジョイント距離ジョイント距離ジョイントモータージョイント直動ジョイント変...
mysqlのリモートアクセス権を有効にするデフォルトでは、MySQL ユーザーにはリモート アクセ...
ダイナミックレム1. まず、現在の長さの単位を紹介しましょうpx em Mの幅 / 漢字の幅 1em...
この記事では、スクロールウィンドウを実装するためのJavaScriptの具体的なコードを参考までに紹...
ボタンをクリックしてテキストを入力ボックスに変換し、保存をクリックしてテキスト実装コードに変換します...
問題を解決するBootstrap は、次の問題を解決する CSS フレームワークです。デバイス間での...
最近、CSS インターフェースに取り組んでいるときに、line-height と height とい...
序文WeChat アプレットを開発する際には、ユーザーの権限が必要なページを使用する必要があることが...
目次Kubernetesについて基本的な環境の準備VirtualBoxをインストールするUbuntu...
Nginx は、マスター プロセス (MasterProcess) と、同じ数のホスト CPU コア...
この記事の例では、マインスイーパゲームを実装するためのjsの具体的なコードを参考までに共有しています...