Very minimal development compose setup for Keycloak.
This commit is contained in:
@ -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:
|
||||
|
Reference in New Issue
Block a user