|
|
|
version: '3'
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
mysql_data:
|
|
|
|
driver: local
|
|
|
|
|
|
|
|
services:
|
|
|
|
mysql:
|
|
|
|
image: mysql:5.7
|
|
|
|
restart: always
|
|
|
|
volumes:
|
|
|
|
- ../data/keycloak/database:/var/lib/mysql
|
|
|
|
environment:
|
|
|
|
MYSQL_ROOT_PASSWORD: root
|
|
|
|
MYSQL_DATABASE: keycloak
|
|
|
|
MYSQL_USER: keycloak
|
|
|
|
MYSQL_PASSWORD: password
|
|
|
|
|
|
|
|
keycloak:
|
|
|
|
image: quay.io/keycloak/keycloak:18.0.0
|
|
|
|
restart: always
|
|
|
|
entrypoint: /opt/keycloak/bin/kc.sh start --hostname="$${KEYCLOAK_HOSTNAME}" --proxy=edge
|
|
|
|
user: "0:0" # otherwise the persistent data directory is not writable
|
|
|
|
env_file:
|
|
|
|
- ../env.production
|
|
|
|
- env.production
|
|
|
|
- ../data/keycloak/env.secrets
|
|
|
|
environment:
|
|
|
|
DB_VENDOR: MYSQL
|
|
|
|
DB_ADDR: mysql
|
|
|
|
DB_DATABASE: keycloak
|
|
|
|
DB_USER: keycloak
|
|
|
|
DB_PASSWORD: password
|
|
|
|
KEYCLOAK_ADMIN: admin
|
|
|
|
# KEYCLOAK_ADMIN_PASSWORD should be set in env.secrets
|
|
|
|
PROXY_ADDRESS_FORWARDING: 'true'
|
|
|
|
volumes:
|
|
|
|
- ../data/keycloak/certs:/etc/x509/https
|
|
|
|
- ../data/keycloak/keycloak:/opt/keycloak/data
|
|
|
|
ports:
|
|
|
|
- 8080:8080
|
|
|
|
depends_on:
|
|
|
|
- mysql
|