#### networks networks: docker-traefik_front_network: external: true back_network: driver: bridge attachable: true #### services services: postgres: container_name: keycloak-postgres hostname: keycloak-postgres image: postgres:15.6-alpine restart: always healthcheck: test: ["CMD", "pg_isready", "-U", "keycloak"] environment: POSTGRES_DB: keycloak_db POSTGRES_USER: keycloak_user POSTGRES_PASSWORD: 'P@ssword!Here!123456' volumes: - ./data:/var/lib/postgresql/data networks: - back_network keycloak: container_name: keycloak-app hostname: keycloak-app image: quay.io/keycloak/keycloak:latest command: ["start-dev", "--import-realm"] restart: always environment: KC_DB: postgres KC_DB_USERNAME: keycloak_user KC_DB_PASSWORD: P@ssword!Here!123456 KC_DB_URL: "jdbc:postgresql://postgres:5432/keycloak_db" KC_HOSTNAME: keycloak.tips-of-mine.local KC_METRICS_ENABLED: true KC_LOG_LEVEL: INFO KC_REALM_NAME: grafana KEYCLOAK_ADMIN: admin KEYCLOAK_ADMIN_PASSWORD: keycloak KC_PROXY: edge ports: - 8282:8080 networks: - back_network - docker-traefik_front_network labels: - "traefik.enable=true" - "traefik.docker.network=docker-traefik_front_network" # HTTP - "traefik.http.routers.keycloak-http.rule=Host(`keycloak.tips-of-mine.local`)" - "traefik.http.routers.keycloak-http.entrypoints=http" # HTTPS - "traefik.http.routers.keycloak-https.rule=Host(`keycloak.tips-of-mine.local`)" - "traefik.http.routers.keycloak-https.entrypoints=https" - "traefik.http.routers.keycloak-https.tls=true" - "traefik.http.routers.keycloak-https.service=keycloak-service" # Middleware # Service - "traefik.http.services.keycloak-service.loadbalancer.server.port=8080"