Compose: Docker-Compose-Up schlägt fehl, weil "Port bereits zugewiesen" ist

Erstellt am 22. Juni 2017  ·  64Kommentare  ·  Quelle: docker/compose

Mein Docker-Container kann erfolgreich erstellt werden, aber wenn ich den Befehl docker-compose build eingebe, wird der folgende Fehler zurückgegeben:

Starting docker_etl_1 ... 
Starting 1e5f56853e10_1e5f56853e10_1e5f56853e10_docker_postgis_1 ... 
Starting 1e5f56853e10_1e5f56853e10_1e5f56853e10_docker_postgis_1
Starting 1e5f56853e10_1e5f56853e10_1e5f56853e10_docker_postgis_1 ... error

ERROR: for 1e5f56853e10_1e5f56853e10_1e5f56853e10_docker_postgis_1  Cannot start service 
postgis: driver failed programming external connectivity on endpoint 
1e5f56853e10_1e5f56853e10_1e5f56853e10_docker_postgis_1 
(91464afbee8bf7212061797ec0f4c017a56cc3c30c9bdaf513127a6e6a4a5a52): Error starting 
userland prStarting docker_etl_1 ... done

ERROR: for postgis  Cannot start service postgis: driver failed programming external connectivity 
on endpoint 1e5f56853e10_1e5f56853e10_1e5f56853e10_docker_postgis_1 
(91464afbee8bf7212061797ec0f4c017a56cc3c30c9bdaf513127a6e6a4a5a52): Error starting 
userland proxy: Bind for 0.0.0.0:5432 failed: port is already allocated

Hier ist meine docker-compose.yaml

version: '2'
services:
  postgis:
    build: ./postgis
    volumes:
      - ../src/main/sql:/sql
    ports:
      - "5432:5432"

  etl:
    build: ./etl
    volumes:
      - ..:/national-voter-file
    entrypoint:
      - python3
      - /national-voter-file/load/loader.py

und hier ist das Dockerfile:

FROM mdillon/postgis:9.5
ENV POSTGRES_DB VOTER
RUN  mkdir /sql
COPY ./dockerResources/z-init-db.sh /docker-entrypoint-initdb.d/
EXPOSE 5432

Ich glaube nicht, dass ein anderer Container ausgeführt wird, daher verwirrt mich die Meldung Bind for 0.0.0.0:5432 failed: port is has been alloked

Hilfreichster Kommentar

Dieses 👇 funktioniert für mich!!

docker-compose down
docker rm -fv $(docker ps -aq)
sudo lsof -i -P -n | grep 5432
  • Für Mac
kill -9 <process id>
  • Linux
sudo kill <process id>

Alle 64 Kommentare

netstat | grep 5432 ?

Hallo @shin- ,

Ich habe gerade einen Hard-Reset auf meinem Computer durchgeführt und erhalte:

$ docker-compose up
_collections.so could not be extracted!

Danach habe ich das gleiche Problem wie von @patrickconnors gepostet:
selection_055

Irgendwelche Ideen?

@budnik Versuchen Sie, docker-compose down auszuführen , um Container und Netzwerke zu bereinigen, dann up erneut und sehen Sie, ob dies die Probleme behebt.

Ich bin heute auf das gleiche Problem gestoßen (mit einem postgres Container), und obwohl ich docker-compose down und dann up erneut versucht habe, besteht das Problem immer noch.

Sowohl docker-compose ps als auch docker ps zeigen mir eine leere Ausgabe.


Vielleicht habe ich aber eine Lösung gefunden:

So ist mein postgres Service definiert

version: '2.1'

services:

  postgres:
    image: postgres:9.5.4
    env_file:
      - docker-compose.env
    ports:
      - 5432:5432

und in meinem Fall bestand die Lösung einfach darin, die Portbindung zu deaktivieren, dh den letzten Teil wie folgt zu ändern:

    ports:
      - 5432

Ich bin mir nicht sicher, ob dies die richtige Lösung ist oder ob sie allgemein auf alle Anwendungsfälle angewendet werden kann.


Könnte es ein Problem mit docker-compose selbst sein?
Als Referenz:

$ docker-compose --version
docker-compose version 1.12.0, build b31ff33

Die obige Lösung war das, was ich brauchte, vielen Dank @lorenzo-pasa!

Ich hatte das gleiche Problem, nachdem ich mein Docker-Compose auf Version 3.3 aktualisiert hatte.
@lorenzo-pasa-Lösung funktioniert lokal für mich (muss noch in Prod ausprobiert werden)

Unten ist _teil_ meiner docker-compose als Referenz:

nginx:
    image: nginx:1.12.2-alpine
    volumes:
      - .:/usr/share/nginx/app
      - ./nginx/nginx.conf:/etc/nginx/nginx.conf
    ports:
      - "80"
    depends_on:
      - web

Ich hatte das und auch Sachen wie Cannot start service mysql: network 4b8e7a23e3724fd351e428be30cdf7a9294d142ac23959ca9092278fc81e96c1 not found . Ich habe sie gelöst, indem ich --build --force-recreate Flags für den up-Befehl verwendet habe.

Dieses 👇 funktioniert für mich!!

docker-compose down
docker rm -fv $(docker ps -aq)
sudo lsof -i -P -n | grep 5432
  • Für Mac
kill -9 <process id>
  • Linux
sudo kill <process id>

FEHLER: for iky_gateway Dienst kann nicht gestartet werden iky_gateway: b'driver failed Programmierung externer Konnektivität am Endpunkt iky_gateway (47d83edbbc1568eae6d26f5e75931797b7e23c6528ff7cc8140f50811fb44922): Fehler beim Starten des Userland-Proxys: Bind for 0.0.0.0:8080' failed:

Ich habe es mit docker-compose down versucht, aber nicht behoben.

Eine andere Lösung, die für zukünftige Leser hilfreich sein kann, ist: Überprüfen Sie Ihre docker-compose.yml-Datei und stellen Sie sicher, dass nicht 2 Elemente auf Port 8080 ausgeführt werden.

Wenn Sie 2 Elemente für die Ausführung auf Port 8080 konfiguriert haben, können Sie die Fehlermeldung "Port bereits zugewiesen" für den Dienst/Container erhalten, der das Problem nicht verursacht - was Sie verwirrt, wenn Sie versuchen, den Dienst/Container zu beenden und zu erhalten keine Auflösung der Fehlermeldung.

Die Lösung von @ Rub21 hat für mich funktioniert, außer dass kill -9 {pid} den Prozess immer wieder neu gestartet hat . Dies lag daran, dass MySQL Server ausgeführt wurde. Unter OSX musste ich:

  1. Systemeinstellungen
  2. Suche nach mysql
  3. Drücken Sie die Taste Stop MySQL Server

Ich habe die Portbindung entfernt und es hat für mich funktioniert, anstatt es zu tun
mysql:Häfen:- 3306:3306
ich musste wechseln zu
mysql:Häfen:- 3306
und alles war gut.

docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)
Entfernen Sie dann alle vorhandenen Daten, z. B. Docker-Volume rm docker_db_data
docker-compose up

Selbes Problem hier. Ich verwende Docker-Version 17.05.0-ce, Build 8965be, mit docker-compose 1.13.0 und 1.22.0. Die Compose-yml-Datei ist 3.2.

Entschuldigung an @KazibweStephen , dies ist keine nützliche Lösung. Sie weisen docker-compose an, einen _abritrary_-Port auszuwählen, damit Clients eine Verbindung zum MySQL-Dienst des Containers herstellen können. Sie können mysql genauso gut anweisen, keinen Port abzuhören oder einfach die Portkonfiguration ganz zu entfernen.

Ich habe oben verschiedene Lösungen ausprobiert, einschließlich _Neustart des Servers_. Es werden keine anderen Container ausgeführt und es gibt keine Konflikte in der yml-Datei. Ich erinnere mich, dass dies in einer viel älteren Version von docker/compose funktionierte. netstat -anp auf dem Host zeigt nichts an den Ports an.

Wenn ich die Abschnitte ports vollständig entferne, starten die Prozesse OK. Ich verwende dann nsenter ... netstat , um zu überprüfen, ob der Container den richtigen Port (in seinem Namespace) überwacht. Ich prüfe dann mit netstat um sicherzustellen, dass es keinen Konflikt im Standard-Namespace gibt. Ich kann dann ein Dienstprogramm wie nc , um denselben Port abzuhören.

Ich kann gegenüber der Dokumentation keinen Grund sehen, warum die Konfiguration nicht funktioniert. Die Schlussfolgerung ist, dass mit dem Proxy-Setup von docker-compose etwas nicht stimmt.

_Nicht zu fassen_. Ich hatte tatsächlich einen winzigen Fehler, der das Problem verursachte. Meine Konfiguration benötigte _zwei_ Ports, und einer davon hatte einen Tippfehler, der den anderen replizierte. Gesichtspalme

netstat | grep 5432 ?

Hallo, wenn ich das starte, bekomme ich diese Meldung..

98808d86b49cff5d stream 0 0 98808d86b6dd9be5 0 0 0 /tmp/.s.PGSQL.5432. Können Sie mir bitte helfen, was zu tun ist? Danke

und in meinem Fall bestand die Lösung einfach darin, die Portbindung zu deaktivieren, dh den letzten Teil wie folgt zu ändern:

    ports:
      - 5432

Ich bin mir nicht sicher, ob dies die richtige Lösung ist oder ob sie allgemein auf alle Anwendungsfälle angewendet werden kann.

Könnte es ein Problem mit docker-compose selbst sein?
Als Referenz:

$ docker-compose --version
docker-compose version 1.12.0, build b31ff33

Dieser Fix hat bei mir funktioniert.

docker-compose -version
docker-compose version 1.23.1, build b02f1306

Ich hatte eine etwas andere Situation, als ich hier postete, um einen weiteren Fall dieses Ereignisses aufzuzeichnen.

Wenn Sie eine docker-compose.yml und eine docker-compose.override.yml Datei verwenden, die beide eine Portzuordnung enthalten, wobei der Host-Port für beide Zuordnungen derselbe ist, der Container-Port jedoch unterschiedlich ist, führt dies dazu, dass Docker versucht, eine Zuordnung vorzunehmen den Host-Port zweimal.

docker-compose.yml:

ports:
  - 8080:8080

docker-compose.override.yml:

ports:
  - 8080:8181

Vielleicht ist dies allein ein Problem. Das Erstellen von überschreibenden Zuordnungen führt zu doppelten Bindungsversuchen. Diese Situation ist besonders knapp, da der Port nicht überwacht wird, bis Sie versuchen, die Container online zu stellen. Was fehlschlägt und damit die gesamte Komposition herunterfährt, was dazu führt, dass der Port wieder nicht zugewiesen wird.

Die Lösung von @lorenzo-pasa hat bei mir funktioniert! Ich verwende docker-compose und nginx, auf dem Ubuntu OS ausgeführt wird, danke, Alter.

Ich bin neugierig: Warum ist dieses Thema geschlossen, während viele Leute immer noch auf ein Problem zu stoßen scheinen (einschließlich mir)? Ist die offizielle Lösung, niemals (zum Beispiel) 8080:8080 zu schreiben und stattdessen immer einfach 8080 zu schreiben? Nur um das klarzustellen, dies ist keine Beschwerde, ich bin aufrichtig neugierig.

@Ezwen stimme zu
Ich habe alle oben geposteten Vorschläge ausprobiert, aber immer noch Fehler.
Ich verwende PHPstorm und versuche, meine Anwendung in einer Dockerbox zu debuggen. Beim Starten der my dockerbox verwende ich docker-compose up with a

Häfen:
- "9001:9001"

die den Port richtig freigibt. (vpnkit.exe ist ein Teil von Docker)
grafik

Ich sehe, dass vpnkit.exe auf Port 9001 lauscht. Wenn ich also jetzt versuche, mein Xdebug in PHPstorm zu starten, kommt die Fehlermeldung
grafik

Ich weiß nicht, warum ich dem PHPstorm-Debugger nicht mitteilen kann, auf Port 9001 zu hören, während er immer von vpnkit.exe verwendet wird, wenn ich meinen Docker-Container starte?

Danke, @lorenzo-pasa! Das war genau mein Problem und deine Lösungen haben funktioniert. Ich habe viel versucht, um dies zu lösen, ohne Ergebnis. Danke nochmal!

Ich bin heute auf das gleiche Problem gestoßen (mit einem postgres Container), und obwohl ich docker-compose down und dann up erneut versucht habe, besteht das Problem immer noch.

Sowohl docker-compose ps als auch docker ps zeigen mir eine leere Ausgabe.

Vielleicht habe ich aber eine Lösung gefunden:

So ist mein postgres Service definiert

version: '2.1'

services:

  postgres:
    image: postgres:9.5.4
    env_file:
      - docker-compose.env
    ports:
      - 5432:5432

und in meinem Fall bestand die Lösung einfach darin, die Portbindung zu deaktivieren, dh den letzten Teil wie folgt zu ändern:

    ports:
      - 5432

Ich bin mir nicht sicher, ob dies die richtige Lösung ist oder ob sie allgemein auf alle Anwendungsfälle angewendet werden kann.

Könnte es ein Problem mit docker-compose selbst sein?
Als Referenz:

$ docker-compose --version
docker-compose version 1.12.0, build b31ff33

Für mich war das Problem, dass noch ein Docker-Container aus einem anderen Projekt im Hintergrund lief.

Ich habe es behoben, indem ich ausgeführt wurde:

docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)

Ich habe das gleiche Problem wie bei @maritaria erwähnt.

@freesoft Es ist wahrscheinlich am besten, dafür eine neue Ausgabe zu eröffnen.

Ich habe hier alles versucht, aber nichts scheint zu funktionieren, dann habe ich Folgendes getan:

sudo lsof -i -P -n | grep 5432

töte alle Prozesse
sudo töten

dann hat es bei mir geklappt.

Hatte das gleiche Problem mit

 Version:           18.09.3
 API version:       1.39
 Go version:        go1.10.8
 Git commit:        774a1f4
 Built:             Thu Feb 28 06:53:11 2019
 OS/Arch:           linux/amd64
 Experimental:      false

Einer der docker-proxy Prozesse hing, also beendete er und systemctl restart docker das Problem.

Ich habe docker system prune ausgeführt (seien Sie vorsichtig mit diesem Befehl) und dann Docker neu gestartet, es hat bei mir funktioniert.

docker network prune scheint das Problem für mich zu lösen

sudo lsof -i -P -n | grep 5432

hat bei mir funktioniert ec2 linux Instanz

sudo lsof -i -P -n | grep

funktioniert für mich, aber muss ich die Prozesse ab und zu beenden?

In meinem Fall hatte ich eine bereits laufende Instanz von node.js auf local mit demselben Port.

Als ich es stoppte, fing docker-compose up --build an zu arbeiten!

In meinem Fall starte ich SO neu

@Rub21 's

sudo lsof -i -P -n | grep <port number>

Das verwendende Programm wurde zu docker-pr geschmäht.

Nachdem ich meine Suchbegriffe entsprechend aktualisiert hatte, stieß ich auf diese .
Das löste mein Problem, dass ich keine Dienste mit Ports bereitstellen konnte, die nicht zugewiesen sein sollten, aber trotzdem sind.

Danke.

Übrigens:
In meinem Fall würde ich glauben, dass die Ursache für meinen Fehler darin bestand, dass ich während der Ausführung von docker network prune einen Hard-Shutdown durchgeführt habe.
Ich vermute, die cli konnte die Aufgabe nicht beenden, daher hatte ich all diese "nicht vorhandenen" Reste in meinem Docker-/Netzwerkpfad.

In meinem Fall hat das funktioniert https://github.com/docker/for-mac/issues/205#issuecomment -250856158

On linux users have reported that after remove local-kv.db with all containers stoped the problem gets solved.

Datei befindet sich in /var/lib/docker/network/files/local-kv.db

kill -9 $(sudo lsof -i -P -n | grep 8888 | awk '{print $2}') hat den Trick für mich gemacht

Trick mit "kill -9.." funktioniert leider nicht.
habe Zombies anstelle des Docker-Proxy-Prozesses:

docker run -it -p 50000:50000 hallo-world
docker: Fehlerantwort vom Daemon: Treiber konnte externe Konnektivität am Endpunkt musing_dijkstra (2afd0e53bb80223bc07650e59bd16b43c6d971828a589db6f43dfa50a7a1ab42) nicht programmieren: Bindung für 0.0.0.0:50000 fehlgeschlagen: Port ist bereits zugewiesen.

docker run -it -p 80:80 hallo-world
docker: Fehlerantwort vom Daemon: Treiber Programmierung der externen Konnektivität am Endpunkt cocky_goldberg fehlgeschlagen (8dab653c7575c298efea1b808ef2ff16f19bb6c23f51612787e19a434ceeb2ff): Bindung für 0.0.0.0:80 fehlgeschlagen: Port ist bereits zugewiesen.

Nach oben | grep zombie
Aufgaben: 319 insgesamt, 1 läuft, 181 schlafend, 0 gestoppt, 2 Zombies

uname -r
4.14.35-1844.4.5.el7uek.x86_64

@lorenzo-pasa Ich bin auf das gleiche Problem beim Konsuldienst gestoßen und dein Trick hat bei mir funktioniert. Danke für die Lösung.

docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)
Entfernen Sie dann alle vorhandenen Daten, z. B. Docker-Volume rm docker_db_data
docker-compose up

Diese Lösung von @joseph-luketelo (danke!) funktionierte auf MacOS Mojave. Musste nicht einmal "bestehende Daten entfernen...". Das Ausführen der ersten beiden Befehle hat es gelöst.

  • Löschen von /var/lib/docker/network/files/local-kv.db (mit allem aus und runter) hat nicht funktioniert
  • Beschneiden von Netzwerken hat nicht funktioniert
  • Löschen aller Volumes und Container hat nicht funktioniert
  • alles zusammen zu machen hat nicht funktioniert
  • Das Töten von docker-proxy Instanzen, die die Ports belegen, hat nicht funktioniert (in der netstat-Ausgabe für diesen Port wird nichts mehr angezeigt, aber immer noch diese Fehlermeldung).
  • Wenn ich die obigen Schritte ausführe, starte den Docker-Dienst neu, docker-compose up hängt einfach auf unbestimmte Zeit.

Dies passiert mir fast wöchentlich seit einem Monat oder so und bisher ist das einzige, was den Trick macht, Docker jedes Mal neu zu installieren. Warum ist das geschlossen? Auch wenn die oben genannten Schritte stattgefunden haben, handelt es sich eindeutig um einen Fehler verschiedener Art ...

Alle genannten Lösungen haben bei mir nicht funktioniert.

So wird gearbeitet:

sudo rm -rf /var/lib/docker
sudo service docker restart # to re-create the db again

Ich habe auch versucht, docker und docker-compose neu zu installieren, aber ich habe keine Ahnung, ob dieser Schritt hilft. Es hat nicht funktioniert, bis ich die oben genannten Schritte ausgeführt habe.

Ich bin heute auf das gleiche Problem gestoßen (mit einem postgres Container), und obwohl ich docker-compose down und dann up erneut versucht habe, besteht das Problem immer noch.

Sowohl docker-compose ps als auch docker ps zeigen mir eine leere Ausgabe.

Vielleicht habe ich aber eine Lösung gefunden:

So ist mein postgres Service definiert

version: '2.1'

services:

  postgres:
    image: postgres:9.5.4
    env_file:
      - docker-compose.env
    ports:
      - 5432:5432

und in meinem Fall bestand die Lösung einfach darin, die Portbindung zu deaktivieren, dh den letzten Teil wie folgt zu ändern:

    ports:
      - 5432 (this also solve my problem)

Ich bin mir nicht sicher, ob dies die richtige Lösung ist oder ob sie allgemein auf alle Anwendungsfälle angewendet werden kann.

Könnte es ein Problem mit docker-compose selbst sein?
Als Referenz:

$ docker-compose --version
docker-compose version 1.12.0, build b31ff33

Das Deaktivieren der Portbindung hat auch mein Problem gelöst

Ich habe den gleichen Fehler erhalten, nachdem ich meine Docker-Konfiguration neu erstellt habe.

ハ➜ docker-compose up
Screen Shot 2020-02-03 at 10 38 30 AM

Ich habe es versucht:
ハ➜ docker-compose down
stand aber immer noch vor dem gleichen problem....

ef18b3f0f2864b22e102): Bind for 0.0.0.0:10002 failed: port is already allocated

ERROR: for db  Cannot start service db: driver failed programming external connectivity on endpoint eeschenck_db_1 (a7caadb27e327b901df83bb42fd19bd704224aa03a75ef18b3f0f2864b22e102): Bind for 0.0.0.0:10002 failed: port is already allocated
ERROR: Encountered errors while bringing up the project.

Ich habe dann versucht, die Docker-Anwendung neu zu starten und meine IDE "Visual Studio Code" mit einer Docker-Erweiterung beendet ...

Screen Shot 2020-02-03 at 10 47 23 AM

Ich habe es dann noch einmal versucht und versucht, den Port zu netstat..
ハ➜ netstat -n | grep 10002
Nichts gefunden für diesen Port... Hätte das vorher versuchen sollen.

ハ➜ docker-compose up

Screen Shot 2020-02-03 at 10 52 16 AM

Sieht so aus, als ob die Visual Studio Code Docker-Erweiterung das Problem für mich sein könnte.

Können Sie Ihre Docker-Compose-Dateikonfiguration teilen?
Sie müssen die Portspiegelung entfernen

Hat bei mir funktioniert

docker-compose down
docker network prune
sudo service docker restart
docker-compose up

Ich bin heute auf das gleiche Problem gestoßen (mit einem postgres Container), und obwohl ich docker-compose down und dann up erneut versucht habe, besteht das Problem immer noch.

Sowohl docker-compose ps als auch docker ps zeigen mir eine leere Ausgabe.

Vielleicht habe ich aber eine Lösung gefunden:

So ist mein postgres Service definiert

version: '2.1'

services:

  postgres:
    image: postgres:9.5.4
    env_file:
      - docker-compose.env
    ports:
      - 5432:5432

und in meinem Fall bestand die Lösung einfach darin, die Portbindung zu deaktivieren, dh den letzten Teil wie folgt zu ändern:

    ports:
      - 5432

Ich bin mir nicht sicher, ob dies die richtige Lösung ist oder ob sie allgemein auf alle Anwendungsfälle angewendet werden kann.

Könnte es ein Problem mit docker-compose selbst sein?
Als Referenz:

$ docker-compose --version
docker-compose version 1.12.0, build b31ff33

@lorenzo-pasa Danke, diese Lösung hat bei mir funktioniert.

Ein Neustart des Docker-Desktop-Daemons auf dem Mac hat mir geholfen (Docker Desktop 2.2.0.4).
Scheint sich beim Start etwas falsch verhalten zu haben.

docker stop $(docker ps -a -q)
Führen Sie diesen Befehl aus, bevor Sie andere Fixes wie -8080:8080 bis -8080 oder sogar Docker rm$(...) versuchen.

Ich habe mein Gerät zurückgesetzt und es funktioniert wieder. Wahrscheinlich keine genaue Lösung, aber funktioniert

Wenn docker ps nichts ausgibt und docker-compose down/up nicht geholfen hat, überprüfen Sie, ob der Port mit diesem Befehl verwendet wird:
sudo lsof -i -P -n | grep 9200

Wenn ja, dann führen Sie einfach aus:
sudo service docker restart

habe das gleiche Problem. Ich mache :

docker-compose down
docker-compose build
docker-compose up -d

aber manchmal passiert ein Fehler

ERROR: for xxxxxx  Cannot start service web: driver failed programming external connectivity on endpoint xxxxx (xxxx): Bind for 0.0.0.0:22000 failed: port is already allocated

Ich kann Docker nicht neu starten, weil dort ein anderer Container läuft

@mogadanez wie von @KorossGame vorgeschlagen,

Haben Sie einen guten Tag,

@pandaatrail
sein Docker, aber es hilft nicht, ich kann den gesamten Docker nicht neu starten.

@mogadanez Wenn Sie Docker nicht neu starten können, überprüfen Sie, was einen bestimmten Port verwendet.
sudo lsof -i -P -n | grep 9200
Überprüfen Sie auch, ob Docker-Container nicht dieselben Eingabeports verwenden mit:
docker ps

Es funktioniert einfach nicht. lsof zeigt keine verwendeten Ports an. Das Entfernen von Bildern und das erneute Erstellen des gesamten Stapels funktioniert nicht. Docker neu starten funktioniert nicht. Das einzige was funktioniert hat war ein Neustart des Systems. Viel Glück.

Hallo,
Sie müssen nur überprüfen, ob ein anderer Dienst denselben Port verwendet.

Wenn Sie Windows verwenden, müssen Sie den folgenden Befehl ausführen:

  1. docker-compose down
  2. netstat -ano | findstr :port ( als Beispiel netstat -ano | findstr :18080 )
  3. taskkill /pid the_pid_of_the_port /f
  4. docker-compose up

Und das war's

@ol Famoussaoui Ich habe das alles versucht, aber für Mac. Keine Lösung funktioniert.

@gabrielhpugliese hast du versucht zu sehen, ob der Port verwendet wird?

@ol Famoussaoui Ich habe das alles versucht, aber für Mac. Keine Lösung funktioniert.

Ich hatte ein ähnliches Compose-Verhalten unter Ubuntu. Es war ein Nebeneffekt, basierend auf falschen iptables-Einstellungen. Die Portübersetzung sollte manuell geprüft und freigegeben werden. Erinnere dich nicht an die korrekte Syntax für MacOS. Es sollte nicht so schwer sein, es am Rosettenstein zu finden.

Ich verstehe nicht, warum ich das alles brauche und das Problem ist weg. Es
ist kein neues Setup, das ich baue und nicht neu erstellt habe
Container/Dienste. Ich habe gerade meinen Servercontainer mit up -d . neu erstellt
--bauen. Sehr seltsam.

vitaly-zverev [email protected] schrieb am Mi., 19. Aug. 2020,
17:27:

@olknownsaoui https://github.com/olknownsaoui Ich habe das alles versucht, aber
für mac. Keine Lösung funktioniert.

Ich hatte ein ähnliches Compose-Verhalten unter Ubuntu. Es war eine Nebenwirkung, basierend auf
falsche iptables-Einstellungen. Portübersetzung sollte überprüft und freigegeben werden
manuell. Erinnere dich nicht an die korrekte Syntax für MacOS. Es sollte nicht so schwer sein
um es am Rosettenstein zu finden.


Sie erhalten dies, weil Sie erwähnt wurden.
Antworten Sie direkt auf diese E-Mail und zeigen Sie sie auf GitHub an
https://github.com/docker/compose/issues/4950#issuecomment-676495723 ,
oder abmelden
https://github.com/notifications/unsubscribe-auth/AAJR3UTBMGLV2ECW5GCNQDTSBPVNXANCNFSM4DQLFGPQ
.

Ich verstehe nicht, warum ich das alles brauche und das Problem ist weg. Es ist kein neues Setup, das ich baue und ich habe keine neuen Container/Dienste erstellt. Ich habe gerade meinen Servercontainer mit up -d --build neu erstellt. Sehr seltsam. vitaly-zverev [email protected] schrieb am Mi., 19. Aug. 2020, 17:27:

@ol Famoussaoui https://github.com/ol Famoussaoui Ich habe das alles versucht, aber für Mac. Keine Lösung funktioniert. Ich hatte ein ähnliches Compose-Verhalten unter Ubuntu. Es war ein Nebeneffekt, basierend auf falschen iptables-Einstellungen. Die Portübersetzung sollte manuell geprüft und freigegeben werden. Erinnere dich nicht an die korrekte Syntax für MacOS. Es sollte nicht so schwer sein, es am Rosettenstein zu finden. — Sie erhalten dies, weil Sie erwähnt wurden. Antworten Sie direkt auf diese E-Mail, zeigen Sie sie auf GitHub < #4950 (Kommentar) > an oder melden Sie sich ab https://github.com/notifications/unsubscribe-auth/AAJR3UTBMGLV2ECW5GCNQDTSBPVNXANCNFSM4DQLFGPQ .

Ähm, Ok, wie ich verstehe, sollte ihre Ursache an der Stelle analysiert werden, an der Docker in die Netzwerkübersetzung integriert ist. Es ist betriebssystemabhängig und hat viele Auswirkungen,
genauso wie jeder Integrationsfehler.

Gab viele gute Antworten. Ich stellte fest, dass das Problem eine andere App war, die ich (Sky Go) auf Catalina installiert hatte und die irgendwie einen Portkonflikt verursachte, obwohl sie geschlossen war.
Es lohnt sich, solche Apps (einschließlich Skype) zu überprüfen, die das Problem nicht verursachen.

Ich stand auch vor dem gleichen Problem. Ich verwende den Port 8080 und jedes Mal, wenn ich versucht habe, Docker auszuführen, wurde Port 8080 bereits verwendet angezeigt. Dann habe ich überprüft, ob eine andere Anwendung den Port blockiert, aber nichts gefunden.
Befolgen Sie dann die folgenden Schritte.

  • docker-compose down (um meinen Container zu stoppen)
  • docker ps (um zu überprüfen, ob in meinem Fall ein Container ausgeführt wird, habe ich festgestellt, dass Hasura graphql ausgeführt wird)
  • Docker-Container-Stopp [Container_ID]
  • docker container rm [Container_ID] (in meinem Fall habe ich den Container auch entfernt)
    und nachdem ich den obigen Prozess befolgt hatte, funktionierte mein Docker

Wenn Sie WSL2 verwenden, überprüfen Sie, ob Hyper-V aktiviert ist oder nicht. Wenn nicht, aktivieren Sie es einfach, das reicht.

OS Neustart hat mir geholfen

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen