Rend l'ensemble du repo agnostique de l'infra perso (paths/domaines/services paramétrés)
This commit is contained in:
@@ -5,29 +5,31 @@ services:
|
||||
container_name: monitorink
|
||||
restart: unless-stopped
|
||||
env_file: .env
|
||||
# Port HTTP direct sur le LAN pour la Kobo (busybox wget, sans Caddy/TLS).
|
||||
# Port HTTP direct sur le LAN pour la Kobo (busybox wget, sans reverse proxy/TLS).
|
||||
ports:
|
||||
- "8899:8080"
|
||||
volumes:
|
||||
# Login Claude ISOLÉ dédié à Monitorink (lecture/écriture pour le refresh du token).
|
||||
# Créé via: CLAUDE_CONFIG_DIR=/home/jerem/.monitorink-claude claude auth login
|
||||
- /home/jerem/.monitorink-claude:/creds:rw
|
||||
# Token openai-codex maintenu frais par Hermes (lecture seule) -> usage Codex.
|
||||
# On monte le DOSSIER (pas le fichier) : Hermes réécrit auth.json par rename()
|
||||
# Créé via: CLAUDE_CONFIG_DIR=$HOME/.monitorink-claude claude auth login
|
||||
- ${HOME}/.monitorink-claude:/creds:rw
|
||||
# Token openai-codex maintenu frais par un processus EXTERNE (lecture seule) -> Codex.
|
||||
# On monte le DOSSIER (pas le fichier) : le producteur réécrit auth.json par rename()
|
||||
# atomique (nouvel inode), or un bind-mount de fichier unique reste accroché à
|
||||
# l'inode capturé au démarrage -> le conteneur servirait un token périmé (401).
|
||||
# Monter le dossier fait re-résoudre /hermes/auth.json à chaque open().
|
||||
- /home/jerem/.hermes:/hermes:ro
|
||||
# Monter le dossier fait re-résoudre /codex/auth.json à chaque open().
|
||||
# MONITORINK_CODEX_DIR = dossier hôte contenant auth.json (cf. .env).
|
||||
- ${MONITORINK_CODEX_DIR:-${HOME}/.config/codex}:/codex:ro
|
||||
# Cache persistant des ratios trackers (survit aux redéploiements -> pas de
|
||||
# re-login massif des 4 trackers après chaque rebuild).
|
||||
- /home/jerem/.monitorink-data:/data:rw
|
||||
# re-login massif des trackers après chaque rebuild).
|
||||
- ${HOME}/.monitorink-data:/data:rw
|
||||
# Optionnel : burn rate via ccusage (lecture seule des logs Claude Code principaux).
|
||||
# Décommenter + MONITORINK_CCUSAGE=1.
|
||||
# - /home/jerem/.claude/projects:/root/.claude/projects:ro
|
||||
# - ${HOME}/.claude/projects:/root/.claude/projects:ro
|
||||
networks:
|
||||
- nestorr
|
||||
- proxy
|
||||
labels:
|
||||
caddy: http://monitorink.homelab.nestor-server.fr
|
||||
# Exemple pour caddy-docker-proxy ; MONITORINK_DOMAIN défini dans .env.
|
||||
caddy: http://${MONITORINK_DOMAIN:-monitorink.example.com}
|
||||
caddy.reverse_proxy: "{{upstreams 8080}}"
|
||||
healthcheck:
|
||||
test: ["CMD", "python", "-c", "import urllib.request,sys; sys.exit(0) if urllib.request.urlopen('http://localhost:8080/health').status==200 else sys.exit(1)"]
|
||||
@@ -35,6 +37,8 @@ services:
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
# Réseau du reverse proxy, déjà existant (external). Nom réel via MONITORINK_NETWORK (.env).
|
||||
networks:
|
||||
nestorr:
|
||||
proxy:
|
||||
external: true
|
||||
name: ${MONITORINK_NETWORK:-monitorink-net}
|
||||
|
||||
Reference in New Issue
Block a user