i am trying to write a crud api just for training , and when i come to db part , i've preferred to use a docker postgres container instead of installing the whole postgres project . but the problem is my api that is not containerzed and the postgres container cannot connect with each other this is the postgres container creation cmd : network :
sudo docker network create --driver bridge crud_db_network_connection
postgres container :
sudo docker run --name postgresDbCrudContainer -p 5432:5432 -e POSTGRES_PASSWORD=postgres -e POSTGRES_USER=postgres -e POSTGRES_DB="cruddb" --network crud_db_network_connection postgres
my api application.yml :
spring:
datasource:
url: jdbc:postgresql://host.docker.internal:5432/cruddb
username: postgres
password: postgres
driver-class-name: org.postgresql.Driver
jpa:
database: POSTGRESQL
show-sql: true
hibernate:
ddl-auto: create
(hint : the api is in my real system it's not in a container .) how should i do to consume my db from the spring api .
i've solved this issue but i will let this problem for every one facing the same issue :
i solved it replacing "host.docker.internal" and with the ip of the container obtained from cmd : sudo docker network inspect network_name