Wie lassen Sie verschiedene Docker-Container miteinander kommunizieren, ohne die Ports der ganzen Welt auszusetzen

Ich musste mein @ testkafka consumer und message werden in einer kontrollierten Umgebung ausgelöst. Also habe ich ein @ gemacansible Projekt für einige Mock erstellenkafka server: mokafelk.

Es funktioniert gut, außer die Sicherheit ist Scheiße. Dasplaybook dreht einen 3-Knotendockerized kafka cluster standardmäßig, aber die Listening-Ports auf den Kafka-Servern sind für alle zugänglich. Hier ist diejinja2 Vorlag desDockerfile wird zum Erstellen des Clusters verwendet.

rundsätzlich möchte ich, dass die Container miteinander kommunizieren können. Ich denke nicht, dass das Verknüpfen von Containern eine Option ist, da mir das Verknüpfen nur in eine Richtung erscheint. Aber einen Port mit @ aussetz127.0.0.1:{{ port }}:{{ port }} macht den Port nur für den Hosting-Computer verfügbar und macht den Port nicht für die anderen Container verfügbar, wenn ich korrekt bin.0.0.0.0:{{ port }}:{{ port }} setzt den Hafen der ganzen Welt aus. Wie kann ich also zwei Container in beide Richtungen verbinden? Dies muss ein häufiges Problem sein, aber ich finde anscheinend keine schnelle Lösung ...

Antworten auf die Frage(2)

Ihre Antwort auf die Frage