-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
48 lines (46 loc) · 1.63 KB
/
docker-compose.yml
File metadata and controls
48 lines (46 loc) · 1.63 KB
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
services:
db:
image: pgvector/pgvector:pg16
container_name: matching-db
environment:
POSTGRES_DB: matching
POSTGRES_USER: app
POSTGRES_PASSWORD: app
ports: ["5432:5432"]
volumes:
- pgdata:/var/lib/postgresql/data
- ./db/init.sql:/docker-entrypoint-initdb.d/init.sql:ro
healthcheck:
test: ["CMD", "pg_isready", "-U", "app", "-d", "matching"]
interval: 5s
timeout: 5s
retries: 10
app:
build: .
image: matching-engine:latest
container_name: matching-app
depends_on:
db:
condition: service_healthy
environment:
DATABASE_URL: postgresql+asyncpg://app:app@db:5432/matching
JWT_SECRET: ${JWT_SECRET:-change-me}
ANTHROPIC_API_KEY: ${ANTHROPIC_API_KEY:-}
HEARTBEAT_INTERVAL_SEC: ${HEARTBEAT_INTERVAL_SEC:-300}
HEARTBEAT_ENABLED: ${HEARTBEAT_ENABLED:-true}
# Demo mode — single `docker compose up` lands a populated, breathing
# dashboard. Set to false (or unset) to skip the seed and the drip.
SEED_ON_BOOT: ${SEED_ON_BOOT:-true}
REPLAY_AUTOSTART: ${REPLAY_AUTOSTART:-true}
REPLAY_INTERVAL_SEC: ${REPLAY_INTERVAL_SEC:-4}
# Twilio SMS — leave blank to keep operator sends in stub mode.
TWILIO_ACCOUNT_SID: ${TWILIO_ACCOUNT_SID:-}
TWILIO_AUTH_TOKEN: ${TWILIO_AUTH_TOKEN:-}
TWILIO_FROM_NUMBER: ${TWILIO_FROM_NUMBER:-}
TWILIO_DEMO_RECIPIENT: ${TWILIO_DEMO_RECIPIENT:-}
TWILIO_MAX_RECIPIENTS: ${TWILIO_MAX_RECIPIENTS:-25}
RESCUE_TEAM_RECIPIENTS: ${RESCUE_TEAM_RECIPIENTS:-}
APP_PASSWORD: ${APP_PASSWORD:-}
ports: ["8080:8080"]
volumes:
pgdata: