2017-06-05 78 views

回答

0

您可以在Docker容器中使用服务器的公有IP地址代替localhost

确保您的防火墙允许端口5432

当你在本地计算机上运行的应用程序,该应用程序可以轻松地访问您的PC上的所有服务(即本地主机)。当您的应用程序在Docker容器中运行时,它将成为与该机器完全隔离的环境(即不访问本地主机和其他系统服务,除非直接公开),并且只能使用Host OS直接提供给Docker-Engine的主机OS服务。这就是为什么你必须通过互联网访问你的服务。 Postgres在你的情况。

+0

你能再细说一下吗? –

+0

修改答案。 –

+0

[在此](https://gist.github.com/Beanben/984434e5429c8a133038dad460c60295)'我的docker-compose.yml'文件需要使用我的本地postgres数据库。但在docker-compose中,我们提到db是图像。在这种情况下,它将创建单独的容器。并且我必须指定我的数据库为本地主机,以便它可以避免创建单独的容器 –

相关问题