version: "3.9" services: postgres: image: postgres:16 environment: POSTGRES_DB: hemhub POSTGRES_USER: hemhub POSTGRES_PASSWORD: hemhub ports: ["5432:5432"] volumes: [ "pgdata:/var/lib/postgresql/data" ] healthcheck: test: ["CMD-SHELL","pg_isready -U hemhub -d hemhub"] interval: 5s timeout: 5s retries: 10 keycloak: image: quay.io/keycloak/keycloak:24.0 command: ["start-dev","--http-port=8081","--import-realm"] environment: KEYCLOAK_ADMIN: admin KEYCLOAK_ADMIN_PASSWORD: admin volumes: - ./keycloak:/opt/keycloak/data/import ports: ["8081:8081"] api: build: . image: registry.local:5000/hemhub/api:dev depends_on: postgres: { condition: service_healthy } environment: SPRING_DATASOURCE_URL: jdbc:postgresql://postgres:5432/hemhub SPRING_DATASOURCE_USERNAME: hemhub SPRING_DATASOURCE_PASSWORD: hemhub APP_VERSION: dev ports: ["8080:8080"] volumes: pgdata: