# llmrouter — ein Image, keine Abhängigkeiten (package.json hat keine deps).
# oven/bun:1 ist Debian-basiert und bringt bun mit; der Router läuft darin
# direkt aus den Quellen (kein Build-Schritt nötig).
FROM oven/bun:1

WORKDIR /app

# Mitgelieferte Demo-Konfiguration: greift nur, wenn LLMROUTER_CONFIG nicht
# gesetzt ist (Compose überschreibt sie mit /data/config.json).
COPY package.json ./
COPY src ./src
COPY config.json key-acls.json ./

EXPOSE 4010

# /health braucht keine Keys; der Router lauscht auch ohne Secret-Umfeld.
HEALTHCHECK --interval=30s --timeout=5s --start-period=10s --retries=3 \
  CMD bun -e 'const p = Number(process.env.PORT ?? 4010); const r = await fetch("http://127.0.0.1:" + p + "/health"); process.exit(r.ok ? 0 : 1)'

CMD ["bun", "src/server.ts"]
