无法使用 docker 工具箱访问 docker 容器 运行 内的 postgres 数据库
Cannot access postgres database inside of a docker container run with docker toolbox
我正在 docker 工具箱 运行 docker windows 10 家,我似乎无法访问 postgres 数据库 运行装在容器中。
数据库肯定是运行ning,因为我用docker container ls
.
可以看到容器
数据库的端口,5432,好像是公开的,我在虚拟机上运行ning 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 服务器,但没有成功(我没有尝试过其他任何东西,因为那超出了我的知识范围)
您尝试如何访问 Postgres 容器?
如果您尝试通过在网络浏览器中输入 http://192.168.99.100:5432
来使用 HTTP 访问它;它可能无法正常工作,因为可能没有网络服务器在您正在使用的 postgres 图像上侦听 HTTP 请求。
您能否尝试 运行 docker run -p 8080:80 nginx
然后在网络浏览器中访问 http://192.168.99.100:8080
。还要通过 运行 docker-machine ip <name-of-machine>
确保这是正确的 IP 地址 - 只是为了确保...
我正在 docker 工具箱 运行 docker windows 10 家,我似乎无法访问 postgres 数据库 运行装在容器中。
数据库肯定是运行ning,因为我用docker container ls
.
数据库的端口,5432,好像是公开的,我在虚拟机上运行ning 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 服务器,但没有成功(我没有尝试过其他任何东西,因为那超出了我的知识范围)
您尝试如何访问 Postgres 容器?
如果您尝试通过在网络浏览器中输入 http://192.168.99.100:5432
来使用 HTTP 访问它;它可能无法正常工作,因为可能没有网络服务器在您正在使用的 postgres 图像上侦听 HTTP 请求。
您能否尝试 运行 docker run -p 8080:80 nginx
然后在网络浏览器中访问 http://192.168.99.100:8080
。还要通过 运行 docker-machine ip <name-of-machine>
确保这是正确的 IP 地址 - 只是为了确保...