forked from adfinis/outdated
-
Notifications
You must be signed in to change notification settings - Fork 0
/
compose.yaml
87 lines (80 loc) · 2.3 KB
/
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
---
version: "3.9"
# local developement only
services:
db:
image: postgres:16-alpine
ports:
- "5432:5432"
volumes:
- dbdata:/var/lib/postgresql/data
- ./postgres/init-db.sh:/docker-entrypoint-initdb.d/init-db.sh:ro
environment:
- POSTGRES_USER=outdated
- POSTGRES_PASSWORD=outdated
- POSTGRES_DB=outdated
- KEYCLOAK_DB_PASSWORD=keycloak
api:
build:
context: ./api
target: dev
# necessary to retain permissions of our files when modifying them in the container (e.g. formatting)
user: "${UID:?Set UID env variable to your user id}"
depends_on:
- db
volumes:
- ./api:/app
- ./api/pdbrc.py:/home/outdated/.pdbrc.py
- projects_data:/home/outdated/projects
ports:
- "8000:8000"
environment:
- ENV=dev
- OIDC_VERIFY_SSL=False
- OIDC_OP_BASE_ENDPOINT=https://outdated.local/auth/realms/outdated/protocol/openid-connect
ember:
build:
context: ./ember/
environment:
- OIDC_OP_BASE_ENDPOINT=https://outdated.local/auth/realms/outdated/protocol/openid-connect
- OIDC_CLIENT_ID=outdated
caddy:
image: caddy:2.6-alpine
volumes:
- ./caddy/Caddyfile:/etc/caddy/Caddyfile:ro
- caddy_data:/data
- caddy_config:/config
ports:
- "0.0.0.0:80:80"
- "0.0.0.0:443:443"
environment:
- DOMAIN_NAME=outdated.local
networks:
default:
aliases:
- outdated.local
keycloak:
image: quay.io/keycloak/keycloak:23.0
depends_on:
- db
volumes:
- ./keycloak/config.json:/opt/keycloak/data/import/config.json
environment:
- KC_DB=postgres
- KC_DB_URL=jdbc:postgresql://db/keycloak
- KC_DB_USERNAME=keycloak
- KEYCLOAK_ADMIN=admin
- KC_HOSTNAME_STRICT=false
- KC_HOSTNAME_STRICT_HTTPS=false
- KC_HTTP_RELATIVE_PATH=/auth
- KC_PROXY=edge
- KC_DB_PASSWORD=keycloak
- KEYCLOAK_ADMIN_PASSWORD=keycloak
# import: docker compose exec keycloak /opt/keycloak/bin/kc.sh import --override true --file /opt/keycloak/data/import/config.json
# export: docker compose exec keycloak /opt/keycloak/bin/kc.sh export --file /opt/keycloak/data/import/config.json
command: "start"
volumes:
dbdata:
caddy_data:
caddy_config:
projects_data: