【发布时间】:2017-11-22 20:48:06
【问题描述】:
我想在 Docker 容器中运行 PostgreSQL。我正在构建自己的 Docker 映像,因为我想包含 PostgreSQL 扩展。我应该将pg_hba.conf 配置文件编辑为:
- 允许来自其他容器的访问
- 允许来自主机的访问
第一个很简单:如果我没记错的话,我可以为172.17.0.0/16添加一条规则。
但是我怎样才能接近第二个呢?当宿主机连接到容器中的 psql 时,IP(或范围)是什么样的?
备注:我是通过docker run -p 127.0.0.1:5432:5432启动容器,所以理论上我可以在pg_hba.conf中允许all,因为端口转发只绑定到127.0.0.1。但是当我(可能是错误地)通过docker run -p 5432:5432 运行容器时,我更喜欢pg_hba.conf 中的这种额外安全级别。我希望这是有道理的。
更新
实际上,设置范围172.17.0.0/16 似乎不正确。例如,我的容器在我的测试中有 IP 172.18.0.2。根据我目前的调查,对于默认范围或如何配置该范围似乎没有达成共识。
【问题讨论】:
标签: postgresql docker