L'histoire qui a conduit à résoudre l'erreur car postgres n'a pas commencé avec docker-compose up

Avant d'installer laravel, je voulais démarrer le conteneur avec docker-compose up, mais je ne pouvais pas.

J'apprenais laravel sur la base d'un certain matériel d'apprentissage, et c'était le contenu pour démarrer le conteneur en utilisant PostgreSQL, mais cela n'a pas bien commencé, donc c'est un mémorandum jusqu'à la résolution des erreurs.

La commande effectivement exécutée

Terminal


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

C'est une option après up, mais les postgres attachés à la fin seront l'histoire cette fois

Si le conteneur est démarré avec succès,

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

Ça devrait sortir comme ça, mais dans mon cas

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

Ça ressemble à ça.

Cause

Il y a quelques mois, j'ai découvert que c'était des postgres que j'avais installés alors que je n'en savais pas beaucoup plus que maintenant.

À ce moment-là, je me suis souvenu de l'existence de postgres, que j'avais installé sans penser à rien parce que je voulais utiliser une base de données autre que MySQL, et quand j'ai regardé l'état de connexion de pgadmin, le numéro de port 5432 indiqué dans ce contenu d'erreur était connecté. C'était dans un état.

Pensez à un chemin vers une solution

Cette fois, c'était une erreur qui s'est produite lors de l'apprentissage d'un certain matériel pédagogique, alors quand j'ai consulté l'instructeur, ・ Les ports ne sont pas disponibles · Adresse déjà utilisée Pourquoi ne cherchez-vous pas avec des mots-clés? J'ai eu le conseil, alors

Les ports ne sont pas disponibles → Les ports ne sont pas disponibles adresse déjà utilisée → L'adresse a déjà été utilisée Sur la base de l'interprétation de la traduction littérale, j'ai cherché et trouvé un indice qui semble être celui-ci.

Article auquel j'ai pu me référer https://mebee.info/2020/04/20/post-7968/

Est-il possible de tuer le processus en utilisant le numéro de port 5432 sur cette base? J'ai pensé et exécuté immédiatement

Terminal


sudo lsof -i -P | grep 5432

pgAdmin4   2471 ---------   21u  IPv6 ---------      0t0  TCP localhost:64447->localhost:5432 (CLOSE_WAIT)
* Les noms de compte et les jetons sont masqués.

Maintenant que nous savons que le numéro de processus était 2471,

Terminal


kill 2471

Exécutez la commande kill avec

Redémarrez le conteneur

Terminal


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

Conteneurs omis qui ont déjà été démarrés
 Starting 8d38216de390_laravel-sns_postgres_1 ... done

J'ai pu démarrer postgres en toute sécurité.

Quand j'y pense, je me suis rappelé que postgres, que je n'avais installé qu'à l'époque et que je n'avais jamais utilisé, était déjà connecté au serveur.

Je connaissais l'horreur d'installer cela même dans un état ignorant, mais à ce moment-là, je ne connaissais même pas du tout la commande kill, alors j'ai appris qu'il y a des choses qui peuvent être résolues avec le temps.

Ce n'est pas un gros problème, mais s'il y a une seule personne dans la même situation, cela peut être utile pour quelque chose.

Recommended Posts

L'histoire qui a conduit à résoudre l'erreur car postgres n'a pas commencé avec docker-compose up
L'histoire lorsque le conteneur ne démarre pas avec docker-compose up et qu'une erreur se produit
Ce que j'ai fait lorsque la base de données n'a pas démarré avec docker-compose up
[Docker] Une histoire sur une erreur dans la composition de docker
L'histoire selon laquelle l'erreur de construction ne s'est pas arrêtée lors de l'utilisation d'Eclipse 2020
Dans WSL2, quand j'ai fait `docker-compose up`, j'ai eu une erreur disant que le fichier sh n'a pas été trouvé.
Je veux passer la commande de démarrage à postgres avec docker-compose.
L'histoire selon laquelle la connexion à la base de données et les autres délais d'expiration n'ont pas expiré selon la valeur définie
[Rails] Une histoire qui a continué à vérifier incorrectement la raison pour laquelle l'action de mise à jour n'a pas réussi (mise à jour)
Comment résoudre le problème qu'Aptana Studio ne démarre pas
[Gradle] L'histoire selon laquelle le fichier de classe n'existait pas dans le fichier jar
[Note] Comment redémarrer le conteneur Windows configuré avec docker-compose
Le conteneur ne commence pas par docker-compose
Correspondant à "erreur que l'authentification de base ne réussit pas" dans le code de test "L'histoire qui n'a pas pu être faite"
L'histoire de l'introduction de Gradle en tant que modernisation d'un système existant qui ne gérait pas de packages
Comment interagir avec un serveur qui ne plante pas l'application
Après avoir vérifié le problème de Montyhall avec Ruby, c'était une histoire que je pouvais bien comprendre et que je ne comprenais pas bien
Lors de l'introduction de JOOQ dans Spring Boot, une histoire qui a été traitée parce qu'une erreur s'est produite autour de Liquidbase
[Erreur] Comment résoudre le phénomène selon lequel l'écran ne passe pas après l'édition
[Grails] Une erreur s'est produite lors de l'exécution Que faire lorsque la CLI Grails ne démarre pas
Que faire quand est invalide car il ne commence pas par un "-"
Erreur lors du déploiement de rails5 + Mysql sur heroku avec Docker-compose
[Spring Boot] L'histoire selon laquelle le bean de la classe avec l'annotation ConfigurationProperties n'a pas été trouvé
Principes de base de la gestion des erreurs Java - L'histoire qui capture n'est prise qu'au premier plan