version: '3.8' services: keycloak: image: quay.io/keycloak/keycloak:23.0.4 restart: unless-stopped command: - start-dev - --db=postgres - --db-url=jdbc:postgresql://postgres:5432/keycloak - --db-username=postgres - --db-password=postgres ports: - 8080:8080 volumes: - /etc/localtime:/etc/localtime:ro environment: - KC_DB=postgres - KEYCLOAK_HOSTNAME=localhost - KEYCLOAK_ADMIN=admin - KEYCLOAK_ADMIN_PASSWORD=admin postgres: image: postgres:15-alpine restart: unless-stopped ports: - 5432:5432 volumes: - database:/var/lib/postgresql/data:rw environment: POSTGRES_INITDB_ARGS: --encoding=UTF-8 --lc-collate=C --lc-ctype=C POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres POSTGRES_DB: keycloak surreal: image: surrealdb/surrealdb:latest restart: unless-stopped command: start --log trace --auth --user root --pass root file:/data/database.db user: root ports: - 8888:8000 volumes: - surrealdb:/data volumes: database: surrealdb: