You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在MacBook Air上用Docker运行PostgreSQL时遇端口不可用错误

解决Docker PostgreSQL容器端口5432被占用的问题

问题原因

你本地通过Homebrew安装的PostgreSQL服务正在占用默认的5432端口,导致Docker容器无法绑定该端口。

解决方案

方案1:停止本地PostgreSQL服务

如果暂时不需要使用本地的PostgreSQL,直接停止服务即可:

brew services stop postgresql

之后重新启动Docker PostgreSQL容器即可。如果之后需要恢复本地服务,执行:

brew services start postgresql

方案2:修改Docker容器的映射端口

启动容器时将容器的5432端口映射到主机的其他空闲端口(比如5433):

docker run -p 5433:5432 -e POSTGRES_PASSWORD=your_password postgres

后续连接容器内的PostgreSQL时,使用localhost:5433作为连接地址。

方案3:修改本地PostgreSQL的端口(保留本地和容器同时运行)

如果需要同时运行本地和容器的PostgreSQL,修改本地服务的端口:

  1. 找到PostgreSQL配置文件,M系列芯片Mac路径通常为/opt/homebrew/var/postgres/postgresql.conf,Intel芯片为/usr/local/var/postgres/postgresql.conf
  2. 打开文件,找到port = 5432行,将端口改为其他值(比如5433)
  3. 重启本地PostgreSQL服务:
brew services restart postgresql

之后Docker容器可以正常使用5432端口。

内容的提问来源于stack exchange,提问作者Wellynton Spagnol

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 08:27:02