chore: add prod deploy files — migration service + env example
Tessera CI/CD / Lint & Type Check (push) Successful in 43s
Tessera CI/CD / Tests (push) Successful in 39s
Tessera CI/CD / Build & Publish Images (push) Successful in 6s

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-29 14:38:18 +02:00
parent 7a9e620db7
commit aefd79ad75
2 changed files with 40 additions and 0 deletions
+26
View File
@@ -0,0 +1,26 @@
# Tessera Production Environment
# Copy to .env and fill in all values before running docker compose up
# Database
DB_PASSWORD=change-me-strong-password
DATABASE_URL=postgresql://tessera:change-me-strong-password@db:5432/tessera
# App
APP_URL=https://tessera.deine-domain.de
JWT_SECRET=change-me-64-char-random-string
# Admin account (created on first start)
TESSERA_ADMIN_USER=admin
TESSERA_ADMIN_EMAIL=admin@deine-domain.de
TESSERA_ADMIN_PASSWORD=change-me-strong-password
# Calendar encryption key — generate with: openssl rand -hex 32
CALENDAR_ENCRYPTION_KEY=
# SMTP (optional)
TESSERA_SMTP_HOST=
TESSERA_SMTP_PORT=587
TESSERA_SMTP_SECURE=false
TESSERA_SMTP_USER=
TESSERA_SMTP_PASSWORD=
TESSERA_SMTP_FROM=Tessera <noreply@deine-domain.de>
+14
View File
@@ -1,4 +1,16 @@
services: services:
migrate:
image: git.vicolab.de/schalli/tessera-ctl/api:latest
command: sh -c "cd /app && node_modules/.bin/prisma migrate deploy --schema apps/api/prisma/schema.prisma"
environment:
DATABASE_URL: ${DATABASE_URL}
networks:
- data-net
depends_on:
db:
condition: service_healthy
restart: "no"
web: web:
image: git.vicolab.de/schalli/tessera-ctl/web:latest image: git.vicolab.de/schalli/tessera-ctl/web:latest
restart: unless-stopped restart: unless-stopped
@@ -27,6 +39,8 @@ services:
depends_on: depends_on:
db: db:
condition: service_healthy condition: service_healthy
migrate:
condition: service_completed_successfully
environment: environment:
DATABASE_URL: ${DATABASE_URL} DATABASE_URL: ${DATABASE_URL}
JWT_SECRET: ${JWT_SECRET} JWT_SECRET: ${JWT_SECRET}