Die Geschichte, die zur Lösung des Fehlers führte, weil postgres nicht mit Docker-Compose begann

Vor der Installation von Laravel wollte ich den Container mit Docker-Compose starten, konnte es aber nicht.

Ich habe Laravel basierend auf einem bestimmten Lernmaterial gelernt, und es war der Inhalt, den Container mit PostgreSQL zu starten, aber es hat nicht gut gestartet, daher ist es ein Memorandum bis zur Fehlerbehebung.

Der tatsächlich ausgeführte Befehl

Terminal


 docker-compose up -d workspace php-fpm nginx postgres

Es ist eine Option nach dem Aufstehen, aber die am Ende angehängten Postgres werden diesmal die Geschichte sein

Wenn der Container erfolgreich gestartet wurde,

Terminal


Creating laravel-sns_docker-in-docker_1 ... done
Creating laravel-sns_workspace_1        ... done
Creating laravel-sns_php-fpm_1          ... done
Creating laravel-sns_nginx_1            ... done
Creating laravel-sns_porstgres_1        ... done

Es sollte so herauskommen, aber in meinem Fall

Terminal


Recreating laravel-sns_postgres_1 ... error
Creating laravel-sns_docker-in-docker_1 ... done
Creating laravel-sns_workspace_1        ... done
Creating laravel-sns_php-fpm_1          ... done
Creating laravel-sns_nginx_1            ... done

ERROR: for laravel-sns_postgres_1  Cannot start service postgres: Ports are not available: listen tcp 0.0.0.0:5432: bind: address already in use

Es sieht aus wie das.

Ursache

Vor ein paar Monaten fand ich heraus, dass es Postgres waren, die ich installiert hatte, als ich nicht viel mehr wusste als jetzt.

Zu dieser Zeit erinnerte ich mich an die Existenz von Postgres, die ich installiert hatte, ohne über irgendetwas nachzudenken, weil ich eine andere Datenbank als MySQL verwenden wollte, und als ich den Verbindungsstatus von pgadmin betrachtete, war die in diesem Fehlerinhalt angezeigte Portnummer 5432 verbunden. Es war in einem Zustand.

Überlegen Sie sich einen Weg zu einer Lösung

Diesmal war es ein Fehler, der beim Lernen eines bestimmten Unterrichtsmaterials auftrat. Als ich mich mit dem Ausbilder beraten habe, ・ Ports sind nicht verfügbar ・ Adresse bereits verwendet Warum suchen Sie nicht mit Stichwörtern? Ich habe den Rat bekommen, also

Ports sind nicht verfügbar → Ports sind nicht verfügbar bereits verwendete Adresse → Die Adresse wurde bereits verwendet Basierend auf der Interpretation der wörtlichen Übersetzung habe ich einen Hinweis gesucht und gefunden, der dies zu sein scheint.

Artikel, auf den ich mich beziehen durfte https://mebee.info/2020/04/20/post-7968/

Ist es möglich, den Prozess unter Verwendung der Portnummer 5432 basierend darauf abzubrechen? Ich dachte und hingerichtet sofort

Terminal


sudo lsof -i -P | grep 5432

pgAdmin4   2471 ---------   21u  IPv6 ---------      0t0  TCP localhost:64447->localhost:5432 (CLOSE_WAIT)
* Kontonamen und Token sind ausgeblendet.

Jetzt, da wir wissen, dass die Prozessnummer 2471 war,

Terminal


kill 2471

Führen Sie den Befehl kill mit aus

Starten Sie den Container erneut

Terminal


 docker-compose up -d workspace php-fpm nginx postgres

Ausgelassene Container, die bereits gestartet wurden
 Starting 8d38216de390_laravel-sns_postgres_1 ... done

Ich konnte Postgres sicher starten.

Wenn ich darüber nachdenke, wurde ich daran erinnert, dass Postgres, das ich damals nur installiert und nie benutzt hatte, bereits mit dem Server verbunden war.

Ich kannte den Schrecken, dies selbst in einem unwissenden Zustand zu installieren, aber zu diesem Zeitpunkt kannte ich den Kill-Befehl überhaupt nicht und erfuhr, dass es einige Dinge gibt, die im Laufe der Zeit gelöst werden können.

Es ist keine große Sache, aber wenn sich auch nur eine Person in derselben Situation befindet, kann es für etwas nützlich sein.

Recommended Posts

Die Geschichte, die zur Lösung des Fehlers führte, weil postgres nicht mit Docker-Compose begann
Die Geschichte, wenn der Container nicht mit Docker-Compose gestartet wird und ein Fehler auftritt
Was ich getan habe, als die DB nicht mit Docker-Compose gestartet wurde
[Docker] Eine Geschichte über einen Fehler beim Erstellen von Docker
Die Geschichte, dass der Erstellungsfehler bei Verwendung von Eclipse 2020 nicht aufgehört hat
In WSL2, als ich "Docker-Compose Up" machte, bekam ich eine Fehlermeldung, dass die sh-Datei nicht gefunden wurde.
Ich möchte den Startbefehl mit Docker-Compose an Postgres übergeben.
Die Geschichte, dass die DB-Verbindung und andere Zeitüberschreitungen nicht gemäß dem festgelegten Wert abgelaufen sind
[Rails] Eine Geschichte, die weiterhin fälschlicherweise den Grund überprüfte, warum die Aktualisierungsaktion nicht bestanden wurde (Aktualisierung)
So lösen Sie das Problem, dass Aptana Studio nicht gestartet wird
[Gradle] Die Geschichte, dass die Klassendatei nicht in der JAR-Datei vorhanden war
[Hinweis] So starten Sie den mit Docker-Compose eingerichteten Windows-Container neu
Container startet nicht mit Docker-Compose
Entspricht "Fehler, dass die Basisauthentifizierung nicht bestanden wird" im Testcode "Die Geschichte, die nicht gemacht werden konnte".
Die Geschichte der Einführung von Gradle als Nachrüstung eines bestehenden Systems, das keine Pakete verwaltet
So interagieren Sie mit einem Server, der die App nicht zum Absturz bringt
Nachdem ich das Montyhall-Problem mit Ruby überprüft hatte, war es eine Geschichte, die ich gut verstehen konnte und die ich nicht gut verstand
Bei der Einführung von JOOQ in Spring Boot wurde eine Geschichte behandelt, die behandelt wurde, weil bei Liquidbase ein Fehler aufgetreten ist
[Fehler] So beheben Sie das Phänomen, dass der Bildschirm nach der Bearbeitung nicht wechselt
[Grails] Beim Ausführen ist ein Fehler aufgetreten. Was ist zu tun, wenn die Grails-CLI nicht gestartet wird?
Was zu tun ist, wenn es ungültig ist, weil es nicht mit einem '-' beginnt
Fehler beim Bereitstellen von Rails5 + MySQL auf Heroku mit Docker-Compose
[Spring Boot] Die Geschichte, dass die Bean der Klasse mit der Annotation ConfigurationProperties nicht gefunden wurde
Grundlagen der Java-Fehlerbehandlung - Die Geschichte, die abfängt, wird nur im Vordergrund aufgegriffen