【发布时间】:2020-05-13 12:28:38
【问题描述】:
我正在使用 docker toolbox 在 windows 10 home 上运行 docker,但我似乎无法访问在容器中运行的 postgres 数据库。
数据库肯定正在运行,因为我可以使用docker container ls 看到容器。
数据库的端口5432好像已经发布了,在虚拟机上运行netstat -atn就可以看到。 netstat 显示
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 :::5432 :::* LISTEN
据我了解,我现在应该可以使用 docker 机器 IP 地址 (192.168.99.100) 以及端口号 (5432) 访问它。但是,这似乎不起作用。
然后我尝试将端口添加到 vm 的端口转发,来宾和主机端口都为 5432,并将主机和来宾的 IP 留空。但我仍然无法访问它。
我试过数据库连接的主机是localhost和192.168.99.100,什么都没有。
我可以通过 ping 和 ssh 访问 192.168.99.100。
我尝试过全新安装,将其关闭再打开,我见过无数针对类似问题提出的其他解决方案,但似乎没有任何效果。
这也不仅限于这个 postreg 数据库,似乎托管在默认机器的容器中的任何内容都无法从主机访问。我也尝试过容器中的 Web 服务器,但没有成功(我没有尝试过其他任何东西,因为这超出了我的知识范围)
【问题讨论】:
标签: docker virtual-machine virtualbox docker-toolbox