it-swarm.com.de

Docker unter Windows 10 "Treiber konnte externe Konnektivität am Endpunkt nicht programmieren"

Ich versuche, $ docker-compose up -d für ein Projekt zu verwenden, und erhalte folgende Fehlermeldung:

FEHLER: Keine Fehler aufgetreten. Fehler aufgetreten. Fehlerhafte Programmierung der externen Verbindung auf dem Endpunkt dataexploration_api_1 (8781c95937a0a4b0b8da233376f71d2fc135f46aad011401c019eb3d14a0b117): Fehler beim Starten des Benutzers Beim Aufrufen des Projekts sind Fehler aufgetreten.

Ich frage mich, ob es vielleicht der Hafen ist? Ich hatte vorher Port 8080 ausprobiert. Das Projekt wurde ursprünglich auf einem Mac eingerichtet und ich habe das Repository von gitHub geklont. 

Vielen Dank im Voraus!

57
Sockness_Rogers

Ich habe die gleiche Fehlermeldung in meinem Windows 10 Pro/Docker v17.06.1-ce-win24/Docker-Compose v1.14.0 mit Windows Powershell x86 im Administratormodus erhalten.

Die Lösung bestand darin, Docker einfach neu zu starten.

134

Wenn dies einmal geschieht, erledigt der Neustart von Docker die Arbeit. In meinem Fall passierte es jedes Mal, wenn ich meinen Computer neu startete.

In diesem Fall deaktivieren Sie Fast Startup , oder Sie starten Docker wahrscheinlich jedes Mal, wenn Ihr Computer startet. Diese Lösung wurde von here erhalten. 

36
chomp

Docker einfach neu zu starten hat das Problem unter Windows 10 nicht behoben.

In meinem Fall habe ich das Problem mit den folgenden Schritten gelöst:

1) Schließen Sie "Docker Desktop"

2) Führen Sie die folgenden Befehle aus:

net stop com.docker.service
net start com.docker.service

3) Starten Sie "Docker Desktop" erneut

Hoffe das wird jemand anderem helfen.

Ich habe auch diesen Fehler erhalten. Wenn Sie wissen möchten, warum der Fehler hauptsächlich auftritt, weil Docker bereits einen ähnlichen Container ausführt, müssen Sie Folgendes tun, um das Problem zu beheben (Neustart von Docker vermeiden):

docker container ls

Sie haben etwas Ähnliches wie:

CONTAINER ID        IMAGE               COMMAND             CREATED
1fa4ab2cf395        friendlyhello       "python app.py"     28 seconds ago

Dies ist eine Liste der laufenden Container, nimm die CONTAINER ID (Kopie Ctrl+C)

Jetzt müssen Sie den Prozess beenden (und ein anderes Image ausführen lassen) und diesen Befehl ausführen.

docker container stop <CONTAINER_ID>

Und das ist alles! Jetzt können Sie den Container erstellen.

Weitere Informationen finden Sie unter https://docs.docker.com/get-started/part2/

4

Eine etwas verspätete Antwort, aber ich werde sie hier lassen. Es könnte jemand anderem helfen. Auf einem Mac-Mojave musste ich nach vielen Neustarts von Mac und Docker Sudo apachectl stop.

0
Tarek
  • Der einfachste Weg, dies zu lösen, ist das Neustarten des Dockers. In einigen Fällen funktioniert dies jedoch möglicherweise nicht, obwohl im Port keine Container ausgeführt werden. Sie können die ausgeführten Container mit dem Befehl docker ps überprüfen und alle Container anzeigen, die zuvor nicht gelöscht, sondern beendet wurden mit docker ps -a Befehl.

Stellen Sie sich vor, es gibt einen Container mit der Container-ID 8e35276e845e. Sie können den Container mit dem Befehl docker rm 8e35276e845e oder docker rm 8e3 beenden. Beachten Sie, dass die ersten 3 Zeichenfolgen sind die ID dieser bestimmten Docker-Container-ID. Somit ist gemäß dem obigen Szenario 8e3 die ID von 8e35276e845e .

  • Wenn ein Neustart nicht funktioniert, können Sie versuchen, die Ports der Dienste in der Datei docker-compose.yml zu ändern. Je nach Apache-Port müssen Sie den Port von v ändern -Host (falls vorhanden) .Dies wird Ihr Problem lösen.

Beispiel: Apache_server: build: context: ./Apache dockerfile: Dockerfile working_dir: /var/www/ volumes: - .:/var/www networks: - app-network ports: - 8082:80 depends_on: - mysql_db

sollte in Apache_server: build: context: ./Apache dockerfile: Dockerfile working_dir: /var/www/ volumes: - .:/var/www networks: - app-network ports: - 8083:80 depends_on: - mysql_db geändert werden

und der jeweilige v-Host muss auch geändert werden,

Beispiel (gemäß dem obigen Szenario): <VirtualHost *:80> ProxyPreserveHost On ServerAlias phpadocker.lk ProxyPass / http://localhost:8083/ ProxyPassReverse / http://localhost:8083/ </VirtualHost>

Dies wird Ihnen helfen, das oben genannte Problem zu lösen.

0
Hirumina

In meinem Fall bestand das Problem darin, dass der Docker-Container (Nginx) 80-Port verwendet und IIS dasselbe verwendet. Das Einrichten eines anderen Ports in IIS behebt das Problem