2025SELab2-project-Dwengo/docker-compose.yml
2025-03-09 22:57:15 +00:00

59 lines
1.8 KiB
YAML

services:
db:
image: postgres:latest
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: postgres
ports:
- '5431:5432'
volumes:
- dwengo_postgres_data:/var/lib/postgresql/data
logging:
image: grafana/loki:latest
ports:
- '3102:3102'
- '9095:9095'
volumes:
- ./config/loki/config.yml:/etc/loki/config.yaml
- dwengo_loki_data:/loki
command: -config.file=/etc/loki/config.yaml
restart: unless-stopped
dashboards:
image: grafana/grafana:latest
ports:
- '3100:3000'
volumes:
- dwengo_grafana_data:/var/lib/grafana
restart: unless-stopped
idp: # Based on: https://medium.com/@fingervinicius/easy-running-keycloak-with-docker-compose-b0d7a4ee2358
image: quay.io/keycloak/keycloak:latest
volumes:
- ./idp:/opt/keycloak/data/import
environment:
KC_HOSTNAME: localhost
KC_HOSTNAME_PORT: 7080
KC_HOSTNAME_STRICT_BACKCHANNEL: 'true'
KC_BOOTSTRAP_ADMIN_USERNAME: admin
KC_BOOTSTRAP_ADMIN_PASSWORD: admin
KC_HEALTH_ENABLED: 'true'
KC_LOG_LEVEL: info
healthcheck:
test: ['CMD', 'curl', '-f', 'http://localhost:7080/health/ready']
interval: 15s
timeout: 2s
retries: 15
command: ['start-dev', '--http-port', '7080', '--https-port', '7443', '--import-realm']
ports:
- '7080:7080'
- '7443:7443'
depends_on:
- db
volumes:
dwengo_postgres_data:
dwengo_loki_data:
dwengo_grafana_data: