Docker-Image, Compose-Demo mit ./data-Mount
Alle Laufzeitdateien (config, ACLs, keys, state, aa-cache, log) gehen über den Mount ./data:/data, weil logDir und ACLs relativ zum CONFIG_PATH aufgelöst werden. Ohne Keys startet der Router trotzdem, /health bleibt bedienbar.
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
# ./data — Laufzeitverzeichnis des Containers
|
||||
|
||||
Hier liegen alle Dateien, die der Router schreibt oder nachladen soll; der
|
||||
Compose-Dienst mountet dieses Verzeichnis nach `/data`. Beim ersten Start:
|
||||
|
||||
```sh
|
||||
cp config.json key-acls.json data/
|
||||
cp .env.example .env # dann Werte eintragen
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
| Datei | Zweck |
|
||||
|---|---|
|
||||
| `config.json` | Konfiguration (Aliasse, Rollen, Profile) — vom Repo übernehmen und anpassen; wird per `LLMROUTER_CONFIG` gelesen |
|
||||
| `key-acls.json` | Rechte je Client-Name — per `LLMROUTER_ACLS` gelesen |
|
||||
| `keys.json` | Client-Token → Name, 0600 empfohlen; pflegen mit `KEYS_FILE=/data/keys.json bun run src/keys.ts add <name>` |
|
||||
| `model-blocklist.json` | optional, von Hand gepflegte Sperrliste (nur mit `MODEL_BLOCKLIST=/data/model-blocklist.json` aktiv) |
|
||||
| `log/`, `state.json`, `aa-cache.json` | schreibt der Router selbst (Log, Zuordnungs-State, AA-Index-Cache) |
|
||||
|
||||
`log/`, `state.json` und `aa-cache.json` werden nicht versioniert — der
|
||||
`.gitignore` lässt außer dieser README alles hier weg.
|
||||
Reference in New Issue
Block a user