Mise à jour vers 0.8.5 ; ajout de la bascule entre le canal bêta et le canal stable
Some checks failed
E2E Tests / e2e (push) Failing after 21s
Build & Push Images / build (brain) (push) Successful in 1m0s
Build & Push Images / build (core) (push) Successful in 1m34s
Build & Push Images / build-switcher (push) Successful in 39s
Build & Push Images / build (web) (push) Successful in 1m40s
Some checks failed
E2E Tests / e2e (push) Failing after 21s
Build & Push Images / build (brain) (push) Successful in 1m0s
Build & Push Images / build (core) (push) Successful in 1m34s
Build & Push Images / build-switcher (push) Successful in 39s
Build & Push Images / build (web) (push) Successful in 1m40s
This commit is contained in:
@@ -102,11 +102,18 @@ services:
|
||||
LICENSING_RELAY_BASE_URL: ${LICENSING_RELAY_BASE_URL:-https://loremind-auth.igmlcreation.fr}
|
||||
# Chemin du docker config.json partage avec Watchtower
|
||||
LICENSING_DOCKER_CONFIG_PATH: /shared/docker/config.json
|
||||
# Chemin du repertoire partage avec le switcher (commande + resultat).
|
||||
# Doit matcher le volume `switcher-data` monte ci-dessous.
|
||||
SWITCHER_DATA_PATH: /shared/switcher
|
||||
volumes:
|
||||
# Volume partage avec Watchtower : Core ecrit les credentials registry
|
||||
# GHCR (recus du relais) ici, Watchtower les utilise pour pull les images
|
||||
# privees du canal beta. Pas de creds = no-op.
|
||||
- docker-config:/shared/docker
|
||||
# Volume partage avec le switcher : Core ecrit une commande de switch
|
||||
# de canal ici (command.json), le switcher la traite et y depose son
|
||||
# resultat (result.json). Cf. service `switcher` ci-dessous.
|
||||
- switcher-data:/shared/switcher
|
||||
restart: unless-stopped
|
||||
|
||||
# Ollama embarque (option par defaut pour les utilisateurs sans Ollama installe).
|
||||
@@ -167,6 +174,44 @@ services:
|
||||
- "${WEB_PORT:-8081}:80"
|
||||
restart: unless-stopped
|
||||
|
||||
# Sidecar de bascule de canal (stable <-> beta).
|
||||
#
|
||||
# Pourquoi : la bascule entre canaux change le PREFIXE d'image (loremind- vs
|
||||
# loremind-beta-), donc Watchtower seul ne peut pas la faire — il met a jour
|
||||
# des images, pas leur reference. Ce sidecar fait le `sed .env` + le
|
||||
# `docker compose pull/up -d` quand le Core depose une commande JSON.
|
||||
#
|
||||
# Securite : pas de port expose. La commande arrive via volume partage
|
||||
# (`switcher-data`) que SEUL le Core ecrit. Le switcher valide strictement
|
||||
# le contenu (channel ∈ {stable, beta}, rien d'autre) — pas de RCE via
|
||||
# compromission du Core.
|
||||
#
|
||||
# L'image switcher est volontairement HORS de IMAGE_NAMESPACE : elle reste
|
||||
# `igmlcreation/loremind-switcher` sur les deux canaux. Sinon le switcher
|
||||
# se tuerait lui-meme pendant le `docker compose up -d` (race condition).
|
||||
switcher:
|
||||
image: ghcr.io/igmlcreation/loremind-switcher:${SWITCHER_TAG:-latest}
|
||||
container_name: loremind-switcher
|
||||
# PAS de label watchtower : la maj du switcher se fait via le canal
|
||||
# stable uniquement, et hors du flow d'auto-update.
|
||||
volumes:
|
||||
# Socket Docker du host : permet de lancer docker compose pull/up.
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
# Repertoire compose du host (docker-compose.yml + .env) — RW pour
|
||||
# pouvoir sed la ligne IMAGE_NAMESPACE.
|
||||
- ${COMPOSE_PROJECT_DIR:-./}:/compose
|
||||
# Volume partage avec le Core pour la commande + le resultat.
|
||||
- switcher-data:/data
|
||||
environment:
|
||||
# Repertoire interne ou trouver docker-compose.yml et .env. Bind au
|
||||
# volume ci-dessus (COMPOSE_PROJECT_DIR = repertoire d'install du host).
|
||||
COMPOSE_DIR: /compose
|
||||
# Nom de projet docker compose : fixe ici pour que le switcher cible
|
||||
# le MEME stack que celui qui tourne (sinon il creerait un duplicate).
|
||||
# Doit matcher le `name:` (en V2.x) ou le nom du dossier du host.
|
||||
COMPOSE_PROJECT_NAME: ${COMPOSE_PROJECT_NAME:-loremind}
|
||||
restart: unless-stopped
|
||||
|
||||
# Mises a jour automatiques des images core/brain/web.
|
||||
# Active uniquement si COMPOSE_PROFILES=autoupdate (gere par l'installeur).
|
||||
# Postgres et MinIO sont volontairement exclus (donnees persistantes,
|
||||
@@ -214,3 +259,5 @@ volumes:
|
||||
# Volume partage Core <-> Watchtower : config.json Docker pour
|
||||
# l'authentification au registry prive GHCR (canal beta Patreon).
|
||||
docker-config:
|
||||
# Volume partage Core <-> Switcher : commande de bascule de canal + resultat.
|
||||
switcher-data:
|
||||
|
||||
Reference in New Issue
Block a user