camp-compose/docker-compose.keycloak.yml
Pierre de Lacroix 4c76772132
initial commit
2025-10-11 18:38:06 +02:00

45 lines
1.2 KiB
YAML

services:
postgresql:
image: postgres:18.0
restart: unless-stopped
environment:
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_USER=${POSTGRES_USER:-keycloak}
- POSTGRES_DB=${POSTGRES_DB:-keycloak}
volumes:
- ${POSTGRES_DATA:-postgres_data}:/var/lib/postgresql/data
keycloak:
image: quay.io/keycloak/keycloak:26.4
restart: unless-stopped
depends_on:
- postgresql
command: start
environment:
- KC_DB=postgres
- KC_DB_URL=jdbc:postgresql://postgresql/${POSTGRES_DB:-keycloak}
- KC_DB_PASSWORD=${POSTGRES_PASSWORD}
- KC_DB_USERNAME=${POSTGRES_USER:-keycloak}
- KC_PROXY=edge
- KC_HOSTNAME_STRICT=false
- KEYCLOAK_ADMIN=${KEYCLOAK_ADMIN_USER:-admin}
- KEYCLOAK_ADMIN_PASSWORD=${KEYCLOAK_ADMIN_PASSWORD}
labels:
- traefik.enable=true
- traefik.http.routers.keycloak.entryPoints=https
- traefik.http.routers.keycloak.rule=Host(`${HOST}`)
- traefik.http.routers.keycloak.tls.certresolver=le-ssl
- traefik.http.services.keycloak.loadbalancer.server.port=8080
- traefik.docker.network=front
networks:
- default
- front
volumes:
postgresql_data:
driver: local
networks:
front:
external: true