Chronicler
Bien démarrer

Installation manuelle

Installer la pile depuis un terminal - la voie des serveurs sans interface graphique.

À utiliser quand le serveur n'a pas de bureau - un VPS, un NAS, une machine en baie - ou simplement quand vous préférez voir ce que vous exécutez.

Créer un dossier pour l'installation

Tout y vit : le fichier compose, le .env, et par extension votre base de données. Choisissez un emplacement durable.

PowerShell
New-Item -ItemType Directory -Force -Path "$env:ProgramData\Chronicler" | Out-Null
Set-Location "$env:ProgramData\Chronicler"

Télécharger le fichier compose

PowerShell
Invoke-WebRequest -Uri "https://github.com/ChroniclerLM/Releases/releases/latest/download/docker-compose.yml" -OutFile "docker-compose.yml"

Écrire le .env

Deux valeurs sont obligatoires : un mot de passe de base de données, et le runtime à utiliser pour le modèle.

PowerShell
"POSTGRES_PASSWORD=$([guid]::NewGuid().ToString('N'))`nCOMPOSE_PROFILES=cpu" | Out-File -Encoding ascii .env

-Encoding ascii est important : Docker Compose ne sait pas lire l'UTF-16 que Out-File écrit par défaut.

Aucun mot de passe par défaut n'est livré, volontairement : il rendrait toutes les installations de la planète devinables à l'identique. Compose refuse de démarrer sans, et le changer après le premier démarrage vous coupe l'accès à votre propre base. Sauvegardez ce fichier avec vos autres secrets.

Choisir le bon runtime

COMPOSE_PROFILES décide quel conteneur Ollama démarre : cpu, nvidia ou amd. cpu fonctionne toujours. Si la machine a une carte graphique, laissez le script de détection choisir :

PowerShell
$vram = nvidia-smi --query-gpu=memory.total --format=csv,noheader,nounits 2>$null
$profile = if ($vram) { "nvidia" } else { "cpu" }
(Get-Content .env) -replace '^COMPOSE_PROFILES=.*$', "COMPOSE_PROFILES=$profile" |
  Set-Content -Encoding ascii .env
if ($vram) {
  Add-Content -Encoding ascii .env "CHRONICLER_GPU_VRAM_GB=$([math]::Floor($vram / 1024))"
}

L'accélération AMD est réservée à Linux. Sous Windows, cette commande choisit NVIDIA si son pilote est visible, sinon elle conserve le profil CPU.

Il teste la machine et écrit le bon COMPOSE_PROFILES dans le .env, ainsi que CHRONICLER_GPU_VRAM_GB s'il trouve une carte NVIDIA : c'est cette seconde clé qui permettra à Admin → Modèle de vous proposer les modèles GPU. Détails et solutions manuelles : Accélération GPU.

Si COMPOSE_PROFILES est totalement absent, aucun runtime de modèle ne démarre. La pile monte mais ne peut répondre à rien, et docker compose logs ollama-pull le dira au bout de deux minutes.

Démarrer

PowerShell
docker compose up -d
docker compose logs -f

Le premier démarrage télécharge plusieurs gigaoctets. Quand chronicler-backend annonce écouter sur 8410, c'est prêt. L'arrêt de chronicler-ollama-pull est normal : il télécharge le modèle puis se termine.

Vérifiez avec :

PowerShell
docker compose ps
Invoke-RestMethod http://localhost:8410/health

Connecter l'application et s'approprier le serveur

Depuis n'importe quel poste du réseau, ouvrez Chronicler → Paramètres → Connexion → Local, et saisissez http://<ip-du-serveur>:8410.

L'écran de connexion propose Créer votre compte administrateur tant que le serveur n'a aucun utilisateur. Créez-le, acceptez les conditions et activez votre clé (Licence).

Faites-le immédiatement après le premier démarrage, depuis un poste de confiance. Un serveur vide est appropriable par le premier arrivé.

Ce qui vient de démarrer

Le schéma de la base est créé automatiquement au premier démarrage, et à chaque mise à jour : vous ne lancez jamais de migration à la main. Avant un changement de schéma, le backend sauvegarde la base et refuse de continuer si cette sauvegarde échoue.

Étapes facultatives