-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathdocker-compose.yaml
103 lines (93 loc) · 2.59 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
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
version: "3.8"
services:
traefik:
image: "traefik:v3.0"
container_name: "traefik"
command:
- "--log.level=DEBUG"
- "--api.insecure=true"
- "--api.dashboard=true"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entryPoints.web.address=:80"
ports:
- "80:80"
- "8080:8080"
- "443:443"
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
labels:
- "traefik.http.routers.dashboard.rule=PathPrefix(`/dashboard`)"
- "traefik.http.routers.dashboard.entrypoints=traefik"
- "traefik.http.routers.dashboard.service=api@internal"
restart: always
networks:
- traefik_network
pocketbase:
restart: always
build:
context: ./pb
dockerfile: Dockerfile
volumes:
- ./data/pb/data:/pb/pb_data
- ./data/pb/hooks:/pb/pb_hooks
ports:
- "8100:8090" # Internal access
labels:
- "traefik.enable=true"
- "traefik.http.routers.pocketbase.rule=Host(`pb.synthify.co`)"
- "traefik.http.routers.pocketbase.entrypoints=web"
networks:
- traefik_network
backend:
build:
context: ./app/packages/backend
dockerfile: Dockerfile
labels:
- "traefik.enable=true"
- "traefik.http.routers.synthifybackend.rule=Host(`backend.synthify.co`)"
- "traefik.http.routers.synthifybackend.entrypoints=web"
networks:
- traefik_network
environment:
- POCKETBASE_HOST=http://pocketbase:8090
- POCKETBASE_EMAIL=${POCKETBASE_EMAIL}
- POCKETBASE_PASSWORD=${POCKETBASE_PASSWORD}
- POCKETBASE_EXTERNAL_AUTH_TOKEN=${POCKETBASE_EXTERNAL_AUTH_TOKEN}
depends_on:
- pocketbase
restart: always
party:
build:
context: ./party
dockerfile: Dockerfile
args:
- BACKEND_HOST=${BACKEND_HOST}
volumes:
- ./data/party:/.partykit
labels:
- "traefik.enable=true"
- "traefik.http.routers.party.rule=Host(`party.synthify.co`)"
- "traefik.http.routers.party.entrypoints=web"
depends_on:
- backend
networks:
- traefik_network
frontend:
build:
context: ./app/
dockerfile: Dockerfile-frontend
args:
- VITE_BACKEND_HOST=${BACKEND_HOST}
- VITE_PARTY_HOST=${PARTY_HOST}
- VITE_POCKETBASE_HOST=${POCKETBASE_HOST}
labels:
- "traefik.enable=true"
- "traefik.http.routers.frontend.rule=Host(`synthify.co`)"
- "traefik.http.routers.frontend.entrypoints=web"
networks:
- traefik_network
depends_on:
- backend
networks:
traefik_network: