在Windows 10上,我用IntelliJ Idea构建了一个Sping Boot 应用程序(在 Bootify.io 的帮助下)。
该应用程序连接到位于名为 Bootifytwo 的Docker(container-postgres-1)中的Postgres数据库。
出于使用和练习GraalVM的目的,我从 Oracle 下载了Docker映像。
从相应的GraalVM容器(container-graalvm-1)中,我已经能够生成target/bootifytwo可执行文件。
但是当我尝试运行它时,它给我一个数据库连接错误。
我在下面列出了我执行的所有步骤,在一些图像之后。
(Note使用网络用于集装箱之间的相互通信;以及对于2个容器中的每一个使用体积)。
如能帮助解决问题,将不胜感激。
Copy folder C:\CODIGO\IDEA_PROJECTS\bootifytwo to C:\Volumenes-Docker\vol-graalvm-1\bootifytwo
docker network create red-postgres-graalvm-1
docker run --name contenedor-postgres-1 -p 5433:5432 --network red-postgres-graalvm-1 -v "C:\Volumenes-Docker\vol-postgres-1:/var/lib/postgresql/data" -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=password -e POSTGRES_DB=bootifytwo -d postgres:13.9-alpine3.17
docker run --name contenedor-graalvm-1 -it --network=red-postgres-graalvm-1 -v "C:\Volumenes-Docker\vol-graalvm-1:/app" container-registry.oracle.com/graalvm/community:ol8-java17-22.3.0-b1 bash
gu install native-image
cd bootifytwo
. ./mvnw native:compile -Pnative
docker start contenedor-graalvm-1
docker exec -it contenedor-graalvm-1 bash
./target/bootifytwo
1条答案
按热度按时间vzgqcmou1#
postgresql数据库运行在你的应用程序之外的一个docker中,所以你不能连接到localhost。
更改设置以连接到
contenedor-postgres-1