web-dev-qa-db-fra.com

Docker & Postgres: impossible de lier l'adresse TCP 0.0.0.0:5432 déjà utilisée

Problème

J'essaie de démarrer PostgreSQL dans un conteneur Docker sur mon Mac, mais je reçois toujours le message d'erreur suivant

docker: Réponse d'erreur du démon: le pilote n'a pas pu programmer la connectivité externe sur les postgres de point de terminaison (8392b9e5cfaa28f480fe1009dee461f97e82499726f4afc4e916358dd2d2f61e): Erreur lors du démarrage du proxy de l'espace utilisateur: échec de la liaison de l'adresse tcp 0.0.0.0:5432 déjà utilisée.

J'ai postgres installé localement, mais je l'ai arrêté et j'ai exécuté

pg_ctl status

retour

pg_ctl: aucun serveur en cours d'exécution

J'ai exécuté ce qui suit pour vérifier ce qui fonctionne sur 5432

lsof -i tcp:5432

&

netstat -anp tcp | grep 5432

et rien ne tourne sur le port.

Versions

Mac - OS X El Capitan version 10.11.2

PostgreSQL - 9.5

Docker - Docker version 1.12.0-rc2, build 906eacd, experimental

18
user3147424

Si vous exécutez lsof -i :5432 sur l'hôte, vous pouvez voir quel processus est lié au port.

Une instance de Postgres est en cours d'exécution. Vous pouvez exécuter kill <pid> pour le tuer si vous voulez. Vous pouvez aussi utiliser 5432 au lieu de 5432:5432 dans votre commande docker ou votre fichier docker-composer et laissez docker choisir automatiquement le port hôte.

20
blockloop