2016-05-31 7 views
1

Ich habe verschiedene Andock-Instanzen und ich muss die Prozesse von node.js in jedem dieser Instanzen starten. Um dies zu tun, ist es notwendig, dass jeder von ihnen auf unterschiedlichen Portnummern beginnt? Wie verwaltet der Container das und gibt es dafür ein Docker Management System? Ich möchte, dass der Client weiß, an welchem ​​Port die Instanz den Prozess node.js initiiert hat. Wie kann das automatisiert werden?Docker-Instanz-Port Management

Antwort

0

Sie müssen die Anwendungen im Docker nicht an verschiedenen Ports starten. Sie können einen beliebigen Port (z. B. Port 80) im Andockcontainer einem beliebigen Port auf Ihrem Hostcomputer zuordnen.

Es gibt keine Regel darüber, wie Sie dies zu Ihrem Vorteil nutzen können.

Wenn Ihre Clients alle IDs im Bereich 1-10000 haben, können Sie den Port 80 des Andockcontainers "client_id + 20000" zuordnen.

+0

Ich bin sein Teamkollege. Wir möchten Docker-Instanzen zur Laufzeit erstellen. Wie stelle ich sicher, dass, wenn ich anfange, sagen wir eine Docker-Instanz auf Port X ausgesetzt - wie stelle ich sicher, dass X nicht verwendet wird - Clients werden TCP-Verbindungen zu diesem Computer. Was wäre, wenn X für Docker reserviert wäre, aber der Client über Port 'X' verbunden wäre? – j10

+0

Wie würde ein Client eine Verbindung zur Maschine an diesem Port herstellen, wenn an diesem Port nichts zu hören ist? – memimomu