Files
talktime/docker-compose.yml
T
patrickandClaude Sonnet 5 b5ac041c32 feat: add Docker Compose deployment for backend/frontend/postgres
Backend Dockerfile runs drizzle-kit migrate on start, frontend serves the
built Vite app via nginx and proxies /api to the backend container.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TBf3yfnnHzMQ5qhLV2285A
2026-09-11 15:28:01 +02:00

40 lines
1.1 KiB
YAML

services:
db:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_USER: talktime
POSTGRES_PASSWORD: ${DB_PASSWORD:-changeme}
POSTGRES_DB: talktime
volumes:
- ./pgdata:/var/lib/postgresql/data
backend:
build: ./backend
restart: unless-stopped
depends_on:
- db
environment:
DATABASE_URL: postgresql://talktime:${DB_PASSWORD:-changeme}@db:5432/talktime
JWT_SECRET: ${JWT_SECRET:?JWT_SECRET must be set}
PORT: 4000
APP_BASE_URL: ${APP_BASE_URL:-http://localhost:8080}
SYNAPSE_BASE_URL: ${SYNAPSE_BASE_URL}
SYNAPSE_ADMIN_TOKEN: ${SYNAPSE_ADMIN_TOKEN}
SYNAPSE_SERVER_NAME: ${SYNAPSE_SERVER_NAME}
SMTP_HOST: ${SMTP_HOST:-}
SMTP_PORT: ${SMTP_PORT:-587}
SMTP_USER: ${SMTP_USER:-}
SMTP_PASSWORD: ${SMTP_PASSWORD:-}
MAIL_FROM: ${MAIL_FROM:-TalkTime <no-reply@talktime.local>}
ports:
- "4000:4000"
frontend:
build: ./frontend
restart: unless-stopped
depends_on:
- backend
ports:
- "8080:80"