Railway Deployment
Uebersicht
Schedule-Bot kann auf Railway deployed werden. Die Konfiguration liegt in railway.toml.
Konfiguration
toml
[build]
builder = "DOCKERFILE"
dockerfilePath = "Dockerfile"
[deploy]
healthcheckPath = "/api/health"
restartPolicyType = "ON_FAILURE"
restartPolicyMaxRetries = 5Setup
1. Projekt erstellen
- Railway Dashboard oeffnen
- "New Project" → "Deploy from GitHub repo"
- Repository verbinden
2. PostgreSQL hinzufuegen
- Im Projekt: "New" → "Database" → "Add PostgreSQL"
- Railway erstellt automatisch
DATABASE_URL
3. Umgebungsvariablen setzen
Im Railway Dashboard unter "Variables":
DISCORD_TOKEN=...
DISCORD_GUILD_ID=...
ADMIN_USERNAME=admin
ADMIN_PASSWORD_HASH=...
JWT_SECRET=...
DASHBOARD_URL=https://dein-dashboard.railway.app4. Dashboard Service
Fuer das Dashboard einen separaten Service erstellen:
- "New" → "Service"
- Root Directory:
dashboard - Variablen setzen:
BOT_API_URL=http://schedule-bot-backend.railway.internal:3001 NEXT_PUBLIC_BOT_API_URL=https://dein-backend.railway.app
Health Check
Der Bot stellt /api/health bereit. Railway nutzt diesen Endpunkt um den Service-Status zu ueberpruefen.
Automatisches Deployment
Railway deployed automatisch bei jedem Push auf den main Branch.
