Technische Architektur
Deployment & Containerisierung
Docker, Multi-Stage Build, Docker Compose und Umgebungskonfiguration
Deployment & Containerisierung
Der Dienst ist für den cloud-nativen und containerisierten Betrieb optimiert.
Multi-Stage Dockerfile
Das Dockerfile nutzt 4 Stufen auf Basis von node:20-alpine:
base: Minimales Alpine-Image mit Node.js 20.dependencies: Installiert Produktions- und Entwicklungsabhängigkeiten.builder: Kompiliert TypeScript in striktes ESM (tsc).runner: Minimaler Production-Container mit unprivilegiertem Benutzernode.
Docker Compose Setup
Die docker-compose.yml orchestriert Fastify und den LiteLLM Proxy in einem gemeinsamen Bridge-Netzwerk:
services:
lorekeeper-api:
build: .
container_name: lorekeeper-api
ports:
- "3005:3000"
environment:
- DIRECTUS_URL=${DIRECTUS_URL}
- DIRECTUS_TOKEN=${DIRECTUS_TOKEN}
- GEMINI_API_KEY=${GEMINI_API_KEY}Fail-Fast Initialisierung
Beim Booten des Fastify-Servers wird ein zwingender Directus-Ping (/server/ping) ausgeführt. Antwortet Directus nicht innerhalb des Timeouts oder sind Zugangsdaten ungültig, bricht der Startprozess mit Exit-Code 1 ab. Dies verhindert unbemerktes Laufen von Diensten im Halbleiterzustand.