Docker&Postgres:无法绑定已经在使用的tcp 0.0.0.0:5432地址
问题
我试图在我的Mac上的docker容器中启动postgres,但我不断收到以下错误消息
docker:来自守护程序的错误响应:驱动程序无法编程端点postgres上的外部连接(8392b9e5cfaa28f480fe1009dee461f97e82499726f4afc4e916358dd2d2f61e):启动userland代理时出错:无法绑定tcp 0.0.0.0:5432地址已在使用中。
我在本地安装了postgres,但是我停止了它并运行
pg_ctl status
回报
pg_ctl:没有服务器正在运行
我已经跑了以下检查5432上运行的是什么
lsof -i tcp:5432
&
netstat -anp tcp | grep 5432
并没有什么是在港口上运行。
版本
Mac – OS X El Capitan版本10.11.2
PostgreSQL – 9.5
Docker – Docker版本1.12.0-rc2,build 906eacd,实验
lsof -i :5432
Docker(1.12.0-rc3-beta18)似乎正在使用postgres的一个实例(我杀了服务,它迫使docker重新启动)。 为了解决这个问题,我把docker-compose ports
部分从5432:5432
改成了5432
,让docker自动select这个端口。