Java 在应用程序启动时,PSQLShell和JDBCURL都可以找到Docker容器数据库

Java 在应用程序启动时,PSQLShell和JDBCURL都可以找到Docker容器数据库,java,postgresql,docker,psql,Java,Postgresql,Docker,Psql,我正试图遵循SpringBoot教程 最后一步是使用一个.yml文件将我的逻辑代码连接到一个容器化数据库。启动时,应用程序在上找不到我的容器化数据库 jdbc url:jdbc:postgresql://localhost:5432/demodb 我得到了这个错误 致命:数据库“demodab”不存在 使用psql shell创建数据库“demodab”是避免此错误的唯一方法,但是 我希望能够使用容器的数据库,并且我相信psqlshell能够看到容器中创建的内容。 所有登录(对于容器和she

我正试图遵循SpringBoot教程

最后一步是使用一个.yml文件将我的逻辑代码连接到一个容器化数据库。启动时,应用程序在上找不到我的容器化数据库

jdbc url:jdbc:postgresql://localhost:5432/demodb

我得到了这个错误

致命:数据库“demodab”不存在

使用psql shell创建数据库“demodab”是避免此错误的唯一方法,但是

我希望能够使用容器的数据库,并且我相信psqlshell能够看到容器中创建的内容。

所有登录(对于容器和shell)都是相同的,但是在命令提示符中输入psql-U postgres将导致我的localhost psql

当我使用\conninfo时,我的shell数据库在端口“5432”连接到“localhost”(地址:1”),而容器数据库通过端口“5432”的“/var/run/postgresql”中的套接字连接

将我的jdbc更改为jdbc url:jdbc:postgresql://var/run/postgresql:5432/demodb也不起作用


这是因为我的计算机上有两个不同的PSQL吗?

作为我自己问题的答案,那些想让jdbc url连接到docker容器数据库的人,必须确保停止任何Postgresql 12服务

最初,我的连接在我的容器IP上被拒绝,但我可以通过终端进行连接。我的postgres dbms也在本地主机中