問題タブ [docker-networking]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - docker-compose アプリケーションと他のコンテナー間の docker swarm でのネットワークの作成
たとえば、Docker Swarm にデプロイされるアプリケーションがあり、次のような構成ファイルがあるとします。
これらのアプリケーションのいくつかをデプロイし、rabbitmq コンテナーを介して通信したいと思うかもしれません。次のように群れにネットワークを作成できると思いました:
次に、rabbitmq インスタンスを次のようにプロビジョニングできます。
次に、アプリケーションをデプロイします。
しかし、アプリケーションが「rabbit」に到達できるようには見えません。
アプリケーションは、(上記のように) 同じ構成ファイルで定義されているサービスを認識できますが、それ以外のサービスを認識できません。
すべてのアプリケーションを同じネットワーク上で取得するにはどうすればよいですか?
EDIT 1 私はまた、構成ファイルをこれに変更しようとしました:
docker-compose - Dockerはymlの静的IPアドレッシングを構成します
私はそのような docker-compose.yml を持っています (ここに完全なリストはありません):
docker-compose up
このようなエラーが発生した後:
ユーザー指定の IP アドレスは、ユーザーが構成したサブネットを持つネットワークに接続する場合にのみサポートされます
だから私はサブネットを作成していますdocker network create --gateway 172.16.1.1 --subnet 172.16.1.0/24 app_subnet
しかし、docker-compose はその場で dev_app_subnet という名前のサブネットを作成するため、これでは問題は解決しません。私のサブネットは使用されていません - 同じエラーが発生しています。これを行う主な目的は、nginx サービスに静的 IP を割り当てることです。プロジェクトの Web URL を etc/hosts ファイルから開きます。
docker - Docker ホスト ネットワークが機能しない
私はこの問題について本当に混乱しています。内部ネットワークに 2 台のコンピューターがあります。両方のコンピューターが内部サーバーに ping を送信できます。両方のコンピューターの docker バージョンは同じです。docker run -it --rm --name cont1 --net=host java:8
両方のコンピューターでコマンドを使用して単純な docker コンテナーを実行 します。次に、コンテナーに ssh し、内部サーバーに ping を試みます。コンテナーの 1 つは内部サーバーに ping を送信できますが、他のコンテナーは内部サーバーに到達できません。
どのようにそれが可能ですか?それについて何か考えはありますか?
ありがとうございました
postgresql - localhost で Docker 化された postgres に接続できませんが、リモート接続は機能しています
docker postgres インスタンスを作成しました
パブリックサーバーIPを使用して、他のホストからこのデータベースに適切に接続できます。
しかし、コンテナが実行されているのと同じホストでこれを実行したい場合、接続できません (ハングするだけです)。
私のpg_hba.conf(コンテナ内)
postgresql.conf 内に次の行があります。
関連する iptables の行:
また、172.19.0.2 アドレスを使用するとローカルで動作しますが、パブリック サーバー IP を使用するとハングします。なぜそうなのか、私にはわかりません。DB を含む多くのホストにアプリケーションを分散させていますが、場所によっては他のアドレスを使用したくありません。誰かがこれを手伝ってくれますか?
docker - 外部ネットワークから docker-container-ip:docker-container-port にアクセスする方法
次の方法で docker setup を実行しています
1) vagrant スクリプトを実行している Windows で、ローカル VM に ubuntu14.04 をインストールする
2) Docker コンテナを実行している VM の上
ここで私の懸念は次のようなものです
Windows マシンのサブネットが異なります (10.204.255.*/16 など)
私の VM サブネットは (10.0.2.*/16) のように異なります
私のdockerコンテナのサブネットは(172.17.0.*/24)のように異なります
VM レベルで特定のコンテナ サービスにアクセスしたい場合は、VM-ip や localhost:forwardind-port/ のように指定して使用できます。
Windowsマシンからアクセスしたい場合は、転送ポートと同じように動作し ます
しかし、Windows マシンから、container-ip:container-port/ のようにアクセスしたい場合、どうすればこれを実現できますか?
なぜこのようにアクセスする必要があるのかというと、私のコンテナでは、corba 固有のサービスを実行しています。container-ip n port を実行している特定のサービスを介してアクセスできるサービス
docker - localhost にバインドされた Docker コンテナー内で実行されているサービスを公開する方法
デフォルトではlocalhostにのみバインドするdocker-container内でサービスを実行しています。
このサービスを再構成/再プログラムしてすべてのインターフェイスにバインドすることはできますが、これは他のコンテキストでセキュリティに影響を与える可能性があります。Dockerコンテナ内でlocalhostにバインドされたサービスを公開する方法はありますか?