'Connect to Postgres in DataGrip

I try to connect to my Postgres database built by docker in DataGrip but I get connection error.

Here is my application.yml file:

spring:
  jpa:
    database: POSTGRESQL
    show-sql: true
    hibernate:
      ddl-auto: update
  datasource:
    url: jdbc:postgresql://db:5432/postgis_db?createDatabaseIfNotExist=true&useSSL=false&allowPublicKeyRetrieval=true
    username: postgres
    password: postgres

Here is docker-compose.yml file:

version: '3.8'

services:
  db:
    image: postgres:latest
    restart: always
    volumes:
      - db:/var/lib/postgresql/data
    environment:
      POSTGRES_DB: postgis_db
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: postgres
    ports:
      - "5432:5432"
    expose:
      - 5432
    networks:
      - app-network

  geolocation-service:
    image: geolocation-service
    build:
      context: .
      dockerfile: dockerfile
    restart: always
    ports:
      - "8080:8080"
    networks:
      - app-network

volumes:
  db:

networks:
  app-network:

DataGrip connection settings:

enter image description here

And the error I get:

enter image description here

Does anybody knows how to solve this?

Connecting to this db by shell works fine:

docker exec -it a37 psql -U postgres postgis_db


Solution 1:[1]

Please check pg_hba.conf file, you have to allow connections from all hosts for this user, by default it is restricted to localhost.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Yuri Win