如何将主机上运行的 Spring Boot 应用程序连接到 Docker 上运行的 Postgresql?

Posted

技术标签:

【中文标题】如何将主机上运行的 Spring Boot 应用程序连接到 Docker 上运行的 Postgresql?【英文标题】:How do I connect SpringBoot application running on host to Postgresql running on Docker? 【发布时间】:2022-01-19 08:05:04 【问题描述】:
   ** Application.properties**
    
spring.datasource.url=jdbc:postgresql://0.0.0.0:8000/dockerDb
spring.datasource.password=somePassword
spring.jpa.show-sql=true 
spring.jpa.hibernate.ddl-auto=create

** 码头工人 ps** 集装箱 ID 1506c2981b1d IMAGE 13 版本 命令“docker-entrypoint.s…” 端口 5432/tcp, 0.0.0.0:8000->5438/tcp 名称 postgresql-13

【问题讨论】:

【参考方案1】:

docker ps 命令中的 0.0.0.0 表示任何地址都可以连接到容器。但是您需要使用真实的 IP 地址或机器名称。因为它在同一台计算机上,所以 localhost 就可以了:

spring.datasource.url=jdbc:postgresql://localhost:8000/dockerDb

【讨论】:

以上是关于如何将主机上运行的 Spring Boot 应用程序连接到 Docker 上运行的 Postgresql?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Docker 内部的 Spring Boot 应用程序连接到 PostgreSQL 外部

如何在weblogic上运行spring boot

Spring Boot + Angular 应用程序

运行 Spring Boot 简单应用程序时找不到 Oracle 驱动程序

如何在带有嵌入式 tomcat 的 Spring Boot App 中设置域名

如何在运行时获取 SPRING Boot HOST 和 PORT 地址?