gpt4 book ai didi

docker : Failed to get driver instance for postgres 中的 Java 应用程序

转载 作者:行者123 更新时间:2023-11-29 12:02:29 25 4
gpt4 key购买 nike

我创建了一个 Java 网络应用程序。当我在主机上运行 java -jar xxx.jar 时,它可以毫无问题地连接到我主机上的 Postgres DB。但是当我的应用程序在我创建的 docker 容器中运行时,它无法获取相同 jdbc URL 的驱动程序实例。错误是:

java.lang.RuntimeException: Failed to get driver instance for jdbcUrl=’jdbc:postgresql://ip_of_my_host:5432/srr’

这是我运行 docker 镜像的方式:

docker run -p 4567:4567 \
-e JP_RESULTS_DB_URL=’jdbc:postgresql://ip_of_my_host:5432/srr’ \
-e JP_RESULTS_DB_USERNAME=my_username \
-e JP_RESULTS_DB_PASSWORD=my_password \
-it id_of_image

4567 是我的 Rest API 服务器的端口号。我还需要为 5432 设置移植吗?如果我添加“-p 5432:5432”,我得到错误它已经分配,​​所以我没有将这个端口添加到 docker run。

可能是什么问题?是驱动问题还是端口问题还是其他?

我还没有在这里找到任何有用的答案,所以我不得不问一下。

最佳答案

您应该使用 docker-compose 来构建堆栈,然后安装 postgresql 驱动程序、java 等来构建整个基础架构。

为此,您需要创建 docker-compose yml。

例如找到下面的链接

Docker Compose + Spring Boot + Postgres connection

关于docker : Failed to get driver instance for postgres 中的 Java 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50144760/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com