-
Notifications
You must be signed in to change notification settings - Fork 102
/
docker-compose.yml
72 lines (68 loc) · 1.79 KB
/
docker-compose.yml
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
services:
app:
container_name: quepid_app
build:
context: .
dockerfile: Dockerfile.dev
env_file:
- .env
environment:
# - RAILS_RELATIVE_URL_ROOT=/quepid-app # Use to nest under a context path like tools.mycompany.com/quepid-app
- QUEPID_DOMAIN=tools.dev.mycorp.com
- LAUNCHY_DRY_RUN=true # dev only letter_opener gem wants to open a browser when sending emails.
- BROWSER=/dev/null
- PUPPETEER_SKIP_DOWNLOAD=true
- PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
volumes:
- .:/srv/app:cached
- ./log:/log
ports:
- 3000:3000
links:
- mysql
- keycloak
depends_on:
- mysql
- keycloak
mysql:
container_name: quepid_db
image: mysql:8.4.3
ports:
- 3306:3306
environment:
- MYSQL_ROOT_PASSWORD=password
keycloak:
image: chorus-keycloak
container_name: keycloak
build:
context: ./keycloak
dockerfile: Dockerfile
command: start --optimized --import-realm
restart: unless-stopped
healthcheck:
test: ["CMD", "curl", "--fail", "http://localhost:8080/health"]
ports:
- 9080:9080
environment:
- KC_HTTP_ENABLED=true
- KC_HTTP_PORT=9080
- KC_HOSTNAME=keycloak
- KC_HOSTNAME_STRICT=false
- KC_HOSTNAME_STRICT_HTTPS=false
- PROXY_ADDRESS_FORWARDING=true
- KEYCLOAK_ADMIN=admin
- KEYCLOAK_ADMIN_PASSWORD=password
- DB_VENDOR=h2
volumes:
- ./keycloak/realm-config/quepid-realm.json:/opt/keycloak/data/import/quepid-realm.json:ro
nginx:
image: nginx:1.27.1-alpine-slim
container_name: quepid_nginx
ports:
- "443:8443"
- "80:80"
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf:ro
- ./.ssl/:/etc/nginx/certs
links:
- app