Docker Container gibt Port nicht mehr frei

Jan-Frederik Stieler

Monsterator
Moderator
Gude,

ich ärger mich gerade mit Docker herum. Ich versuche die Cloudversion von Appflowy zu installieren und da die Dokumentation sich mehr als zurückhält, muss ich hier bei den Einstellungen Try and Error machen. Aber beim Neuzusammenstellen der Container lässt sich der mit nginx nicht neu starten mit dem Fehler:
Error response from daemon: driver failed programming external connectivity on endpoint appflowy-cloud-nginx-1 (2820777e0694e38b0426e998eaa8052bd608a3bb2aa86ffa5e571083362b9dd8): failed to bind port 0.0.0.0:80/tcp: Error starting userland proxy: listen tcp4 0.0.0.0:80: bind: address already in use
Selbst wenn ich alle Container beende ist der Port belegt.
Wie bekomm ich den auch diesen Container neu gestartet und das er vorher den Port frei gibt?

Grüße
 
Und wenn alle Container aus sind, schonmal in die Prozess-Liste geschaut, ob da noch immer ein nginx oder Apache rumturnt?
 
Ah ja ich hab natürlich vergessen zu schreiben das ich noch mein normales Nginx laufen habe. Immer dieser scheiß mit dem Docker. Ich kann mich damit nur bedingt anfreunden für Software die man nicht nur mal eben schnell ausprobieren will. Die Anleitung für Appflowly ist aber auch so reduziert geschrieben da weiß man natürlich woher der Wind weht. Die wollen ja Geld verdienen .

Grüße
 
Dann halte doch mal deinen eigenen nginx (der direkt im Host läuft?) "hart" an, und schau mal ob der Container dann sauber startet
 
Meine Vermutung wäre da, dass der Dockercontainer den Port auf dem Host bekannt machen möchte, dass man den ansurfen kann.
 
Meine Vermutung wäre da, dass der Dockercontainer den Port auf dem Host bekannt machen möchte, dass man den ansurfen kann.
Auch meine Vermutung. Aber wenn auf dem Host selbst schon ein nginx an ist, der Port80 für sich beansprucht, dann bekommt der Container eben ein "eh eh...nix da. Port gehört mir" an den Kopf geworfen.

Oder ich verstehe prinzipiell etwas falsch bei dem ganzen Kram
 
Nein, da hast du recht. Wenn der Port vom Container auf dem Host bekannt gemacht werden soll, versucht Docker natürlich den Port zu nutzen, wenn da aber schon ein Dienst läuft, geht das nicht.
@Jan-Frederik Stieler Wenn du magst, kannst du ja mal die Dockerfile/Docker-Compose-File oder das Docker Commando posten, was du nutzt.
 
Nein, da hast du recht. Wenn der Port vom Container auf dem Host bekannt gemacht werden soll, versucht Docker natürlich den Port zu nutzen, wenn da aber schon ein Dienst läuft, geht das nicht.
@Jan-Frederik Stieler Wenn du magst, kannst du ja mal die Dockerfile/Docker-Compose-File oder das Docker Commando posten, was du nutzt.
Ich glaube Jan hat es schon verstanden bzw. mittlerweile gelöst.
Entweder hat er den nginx auf dem Host abgestellt, oder eben andere Portnummern verwendet (auf welcher Seite der Container-Grenze jetzt auch immer)
 
Ich meine, hättest du die Dateien oder das Kommando gepostet, hätten wir dir vielleicht direkt sagen können, ob es daran liegt und welche Stelle du genau ändern musst.
Nur deshalb habe ich gefragt. Dass du verstanden hast, was wir meinen, davon ging ich aus :)
 
Zurück