51 lines
1.4 KiB
YAML
51 lines
1.4 KiB
YAML
services:
|
|
keycloakserver:
|
|
image: quay.io/keycloak/keycloak:26.1
|
|
container_name: keycloakserver
|
|
hostname: keycloakserver
|
|
command: start
|
|
environment:
|
|
KC_PROXY_ADDRESS_FORWARDING: true
|
|
KC_HOSTNAME_STRICT: false
|
|
KC_HOSTNAME: ${KEYCLOAK_HOSTNAME}
|
|
KC_PROXY: edge
|
|
KC_HTTP_ENABLED: true
|
|
KC_HEALTH_ENABLED: true
|
|
KC_HTTP_RELATIVE_PATH: /sso
|
|
KC_PROXY_HEADERS: xforwarded
|
|
PROXY_ADDRESS_FORWARDING: true
|
|
|
|
KEYCLOAK_ADMIN: ${KEYCLOAK_ADMIN}
|
|
KEYCLOAK_ADMIN_PASSWORD: ${KEYCLOAK_ADMIN_PASSWORD}
|
|
|
|
KC_DB: postgres
|
|
KC_DB_URL: jdbc:postgresql://keycloakpostgres/${POSTGRES_DB}
|
|
KC_DB_USERNAME: ${POSTGRES_USER}
|
|
KC_DB_PASSWORD: ${POSTGRES_PASSWORD}
|
|
|
|
# KC_LOG_LEVEL: INFO
|
|
# KC_LOG_LEVEL: DEBUG
|
|
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "exec 3<>/dev/tcp/127.0.0.1/9000;echo -e 'GET /sso/health/ready HTTP/1.1\r\nhost: http://localhost\r\nConnection: close\r\n\r\n' >&3;if [ $? -eq 0 ]; then echo 'Healthcheck Successful';exit 0;else echo 'Healthcheck Failed';exit 1;fi;"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 5
|
|
start_period: 60s
|
|
|
|
volumes:
|
|
- ./export_data:/export_data
|
|
- ./custom:/opt/keycloak/themes/custom
|
|
|
|
ports:
|
|
- 8080:8080
|
|
- 9000:9000
|
|
restart: always
|
|
|
|
networks:
|
|
- keycloak-network
|
|
|
|
networks:
|
|
keycloak-network:
|
|
external: true
|
|
|