Docker image - Welcher Port?
Hallo,
ich hab hier xubuntu15.10 auf welchem ich testweise rocketchat installieren möchte. Dies habe ich über ein Dockerimage installiert. (bisher damit noch nichts gemacht, aber es intressiert mich)
Laut docker ist es installiert und läuft:
"Wo" läuft denn jetzt rocketchat?
Mit netstat -tulpen gibts keine Anhaltspunkte dass am Port 3000 was laufen würde, wohin sich ein Client verbinden könnte.
Danke
Grüße
ich hab hier xubuntu15.10 auf welchem ich testweise rocketchat installieren möchte. Dies habe ich über ein Dockerimage installiert. (bisher damit noch nichts gemacht, aber es intressiert mich)
Laut docker ist es installiert und läuft:
sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
rocket.chat latest c4a91545c097 39 hours ago 737.7 MB
mongo latest e79b013480eb 9 days ago 309.8 MB
hello-world latest 690ed74de00f 5 months ago 960 B
sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e79b845c8a8e rocket.chat "node main.js" 37 minutes ago Up 37 minutes 3000/tcp rocketchat
8cc525753091 mongo "/entrypoint.sh --sma" 43 minutes ago Up 42 minutes 27017/tcp db
"Wo" läuft denn jetzt rocketchat?
Mit netstat -tulpen gibts keine Anhaltspunkte dass am Port 3000 was laufen würde, wohin sich ein Client verbinden könnte.
Danke
Grüße
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 299458
Url: https://administrator.de/forum/docker-image-welcher-port-299458.html
Ausgedruckt am: 07.04.2025 um 16:04 Uhr
2 Kommentare
Neuester Kommentar

Moin,
https://docs.docker.com/engine/userguide/networking/dockernetworks/
Gruß jodel32
(bisher damit noch nichts gemacht, aber es intressiert mich
"Wo" läuft denn jetzt rocketchat?
Dann sollte dich folgende Lektüre zum Ziel führen:"Wo" läuft denn jetzt rocketchat?
https://docs.docker.com/engine/userguide/networking/dockernetworks/
Gruß jodel32
Hi,
generell kannst du Docker mit dem eigenen internen Netzwerk laufen lassen (per NAT, default) oder deine Anwendung an dein bestehendes Host Netzwerk binden (docker run --net=host ..). Vorteil bei der NAT-Variante ist die Sicherheit, Nachteil ist die fehlende Geschwindigkeit. Bei --net=host hast du den Vorteil der Geschwindigkeit, aber den Nachteil, dass der Docker Container dann auch Zugriff auf dein Netzwerk hast.
Startet du eine Anwendung per "--net=host" kannst du auf die Anwendung per Localhost und dem entsprechenden Port zugreifen. Beim Default NAT Netzwerk bekommt die Anwendung eine eigene interne IP und du musst den Port per "docker run --p xx:xx .." auf deinen lokalen Port weiterleiten.
NAT Beispiel "redis" Docker Image:
HOST Beispiel "redis" Docker Image:
Danach kannst du bei beiden Varianten auf "127.0.0.1" und Port 6379 der Redis DB zugreifen.
Ergänzend sei auch noch der INSPECT Befehl von docker: Er liefert dir alle wichtigen Angaben wie IP-Adresse, Port, Mountpoints, Image, Datadir, Logfile etc.
Beispiel für die IP-Adresse:
In deinem Fall dann:
oder einfach nur:
Dann bekommst du alle Informationen zu rocketchat.
Siehe dazu auch:
https://docs.docker.com/engine/reference/commandline/inspect/
Gruß
Frank
generell kannst du Docker mit dem eigenen internen Netzwerk laufen lassen (per NAT, default) oder deine Anwendung an dein bestehendes Host Netzwerk binden (docker run --net=host ..). Vorteil bei der NAT-Variante ist die Sicherheit, Nachteil ist die fehlende Geschwindigkeit. Bei --net=host hast du den Vorteil der Geschwindigkeit, aber den Nachteil, dass der Docker Container dann auch Zugriff auf dein Netzwerk hast.
Startet du eine Anwendung per "--net=host" kannst du auf die Anwendung per Localhost und dem entsprechenden Port zugreifen. Beim Default NAT Netzwerk bekommt die Anwendung eine eigene interne IP und du musst den Port per "docker run --p xx:xx .." auf deinen lokalen Port weiterleiten.
NAT Beispiel "redis" Docker Image:
/usr/bin/docker run -p 6379:6379 -it --rm redis:alpine
HOST Beispiel "redis" Docker Image:
/usr/bin/docker run --net=host -it --rm redis:alpine
Danach kannst du bei beiden Varianten auf "127.0.0.1" und Port 6379 der Redis DB zugreifen.
Ergänzend sei auch noch der INSPECT Befehl von docker: Er liefert dir alle wichtigen Angaben wie IP-Adresse, Port, Mountpoints, Image, Datadir, Logfile etc.
Beispiel für die IP-Adresse:
$ docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name
In deinem Fall dann:
$ docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' rocketchat
oder einfach nur:
$ docker inspect rocketchat
Dann bekommst du alle Informationen zu rocketchat.
Siehe dazu auch:
https://docs.docker.com/engine/reference/commandline/inspect/
Gruß
Frank