Aktuell habe ich viel mit unterschiedlichen Pimcore Projekten zu tun und die meisten davon werden durch Docker Container gestartet und sind dann aktiv.
Von Zeit zu Zeit – insbesondere nach Aktualisierungen meines Ubuntu Systems – laufe ich beim Start der Docker Container auf einen Fehler:
ERROR: for xxx_webserver_1 Cannot start service webserver: driver failed programming external connectivity on endpoint xxx_webserver_1 (f9003400fd09c19a39d2e6dd3f14b9e972da0940c608d00f408c1ab9181253e6): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use
ERROR: for webserver Cannot start service webserver: driver failed programming external connectivity on endpoint xxx_webserver_1 (f9003400fd09c19a39d2e6dd3f14b9e972da0940c608d00f408c1ab9181253e6): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use
ERROR: Encountered errors while bringing up the project.
Wie man deutlich erkennen kann, wird der Webserver nicht gestartet, weil die benutzte TCP-Adresse bereits in Verwendung ist.
Wie kann das nach einem Neustart sein?
Die Antwort ist ganz einfach.
Intern wird durch das Ubuntu System ein Apache Webserver gestartet, der als Systemdienst im Hintergrund läuft und nun diese Adresse und den Port belegt, weshalb er erst gestoppt werden muss, zum Beispiel durch:
sudo /etc/init.d/apache2 stop
Anschließend kann der docker Befehl nochmals aufgenommen werden:
docker-compose up -d
…und alles wird gut.