-
Notifications
You must be signed in to change notification settings - Fork 137
/
Copy pathdocker-compose.yaml
52 lines (48 loc) · 2.03 KB
/
docker-compose.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# This file lets you run the example with a single command: docker-compose up
# Download docker here: https://www.docker.com/products/docker-desktop
#
# This docker compose starts two services:
# 1. a SQLPage service that serves a simple page with a login button
# 2. a Keycloak service that acts as an OpenID Connect provider (manages users and authentication)
#
services:
sqlpage:
image: lovasoa/sqlpage:main # Use the latest development version of SQLPage
volumes:
- .:/var/www
- ./sqlpage:/etc/sqlpage
environment:
# OIDC configuration
- SQLPAGE_HOST=localhost:8080
- SQLPAGE_OIDC_ISSUER_URL=http://localhost:8181/realms/sqlpage_demo
- OIDC_AUTHORIZATION_ENDPOINT=http://localhost:8181/realms/sqlpage_demo/protocol/openid-connect/auth
- OIDC_TOKEN_ENDPOINT=http://localhost:8181/realms/sqlpage_demo/protocol/openid-connect/token
- OIDC_USERINFO_ENDPOINT=http://localhost:8181/realms/sqlpage_demo/protocol/openid-connect/userinfo
- OIDC_END_SESSION_ENDPOINT=http://localhost:8181/realms/sqlpage_demo/protocol/openid-connect/logout
- OIDC_CLIENT_ID=sqlpage
- OIDC_CLIENT_SECRET=qiawfnYrYzsmoaOZT28rRjPPRamfvrYr
# CAS (central authentication system) configuration
# (you can ignore this if you're only using OpenID Connect)
- CAS_ROOT_URL=http://localhost:8181/realms/sqlpage_demo/protocol/cas
# SQLPage configuration
- RUST_LOG=sqlpage=debug
network_mode: host
depends_on:
keycloak:
condition: service_healthy
keycloak:
build:
context: .
dockerfile: keycloak.Dockerfile
environment:
- KEYCLOAK_ADMIN=admin
- KEYCLOAK_ADMIN_PASSWORD=admin
volumes:
- ./keycloak-configuration.json:/opt/keycloak/data/import/realm.json
network_mode: host
healthcheck:
test: ["CMD-SHELL", "/opt/keycloak/bin/kcadm.sh get realms/sqlpage_demo --server http://localhost:8181 --realm master --user admin --password admin || exit 1"]
interval: 10s
timeout: 2s
retries: 5
start_period: 5s