From f0fc18ab7fdfc1ad5d347d460cf32ded4bc124ed Mon Sep 17 00:00:00 2001 From: Christian Galo Date: Thu, 20 Feb 2025 18:48:10 -0600 Subject: [PATCH] Very minimal development compose setup for Keycloak. --- test/compose.yaml | 69 ++++++++++++----------------------------------- 1 file changed, 17 insertions(+), 52 deletions(-) diff --git a/test/compose.yaml b/test/compose.yaml index bbab96e..804ff24 100644 --- a/test/compose.yaml +++ b/test/compose.yaml @@ -1,62 +1,27 @@ services: - app: - image: "keycloak/keycloak:26.1" - entrypoint: > - bash -c "KEYCLOAK_ADMIN_PASSWORD=\"$$(cat /run/secrets/admin_password)\" KC_DB_PASSWORD=\"$$(cat /run/secrets/db_password)\" /opt/keycloak/bin/kc.sh start" - networks: - - internal - secrets: - - admin_password - - db_password + keycloak: + image: quay.io/keycloak/keycloak:latest + command: start-dev environment: - - KC_DB=postgres - - KC_DB_URL_DATABASE=keycloak - - KC_DB_URL_HOST=db - - KC_HOSTNAME=https://${DOMAIN} - - KC_PROXY_HEADERS=forwarded - - KEYCLOAK_ADMIN=${ADMIN_USERNAME} - - KEYCLOAK_WELCOME_THEME=${WELCOME_THEME} - - KC_FEATURES - - KC_HTTP_ENABLED=true - volumes: - - "themes:/opt/keycloak/themes" - - "providers:/opt/keycloak/providers" + KC_DB: postgres + KC_DB_URL: jdbc:postgresql://db/keycloak + KC_DB_USERNAME: keycloak + KC_DB_PASSWORD: keycloak + KC_BOOTSTRAP_ADMIN_USERNAME: admin + KC_BOOTSTRAP_ADMIN_PASSWORD: admin + ports: + - "8080:8080" depends_on: - db - deploy: - update_config: - failure_action: rollback - order: start-first db: - image: "postgres:17" + image: postgres:latest environment: - - POSTGRES_DB=keycloak - - POSTGRES_USER=keycloak - - POSTGRES_PASSWORD_FILE=/run/secrets/db_password - secrets: - - db_password - - db_root_password + POSTGRES_DB: keycloak + POSTGRES_USER: keycloak + POSTGRES_PASSWORD: keycloak volumes: - - "postgres:/var/lib/postgresql/data" - networks: - - internal - -networks: - internal: - -secrets: - admin_password: - name: keycloak_admin_password - external: true - db_password: - name: keycloak_db_password - external: true - db_root_password: - name: keycloak_db_root_password - external: true + - postgres_data:/var/lib/postgresql/data volumes: - postgres: - themes: - providers: + postgres_data: