[{"data":1,"prerenderedAt":750},["ShallowReactive",2],{"navigation_docs_fr":3,"-fr-self-hosting-backups":123,"-fr-self-hosting-backups-surround":745},[4,36,107],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":35},"Démarrage","i-lucide-rocket","\u002Ffr\u002Fgetting-started","fr\u002F1.getting-started",[10,15,20,25,30],{"title":11,"path":12,"stem":13,"icon":14},"Qu'est-ce que Chronicler","\u002Ffr\u002Fgetting-started\u002Fwhat-is-chronicler","fr\u002F1.getting-started\u002F1.what-is-chronicler","i-lucide-help-circle",{"title":16,"path":17,"stem":18,"icon":19},"Installer l'application","\u002Ffr\u002Fgetting-started\u002Finstall-the-app","fr\u002F1.getting-started\u002F2.install-the-app","i-lucide-download",{"title":21,"path":22,"stem":23,"icon":24},"Démarrage rapide Cloud","\u002Ffr\u002Fgetting-started\u002Fcloud-quickstart","fr\u002F1.getting-started\u002F3.cloud-quickstart","i-lucide-cloud",{"title":26,"path":27,"stem":28,"icon":29},"Votre première conversation","\u002Ffr\u002Fgetting-started\u002Fyour-first-chat","fr\u002F1.getting-started\u002F4.your-first-chat","i-lucide-messages-square",{"title":31,"path":32,"stem":33,"icon":34},"Gérer les utilisateurs","\u002Ffr\u002Fgetting-started\u002Fmanaging-users","fr\u002F1.getting-started\u002F5.managing-users","i-lucide-users",false,{"title":37,"icon":38,"path":39,"stem":40,"children":41,"page":35},"Auto-hébergement","i-lucide-server","\u002Ffr\u002Fself-hosting","fr\u002F2.self-hosting",[42,47,52,57,62,67,72,77,82,87,92,97,102],{"title":43,"path":44,"stem":45,"icon":46},"Vue d'ensemble","\u002Ffr\u002Fself-hosting\u002Foverview","fr\u002F2.self-hosting\u002F1.overview","i-lucide-layout-dashboard",{"title":48,"path":49,"stem":50,"icon":51},"Sauvegardes et restauration","\u002Ffr\u002Fself-hosting\u002Fbackups","fr\u002F2.self-hosting\u002F10.backups","i-lucide-database-backup",{"title":53,"path":54,"stem":55,"icon":56},"Mises à jour","\u002Ffr\u002Fself-hosting\u002Fupdating","fr\u002F2.self-hosting\u002F11.updating","i-lucide-refresh-cw",{"title":58,"path":59,"stem":60,"icon":61},"Sécurité et réseau","\u002Ffr\u002Fself-hosting\u002Fsecurity-and-networking","fr\u002F2.self-hosting\u002F12.security-and-networking","i-lucide-shield",{"title":63,"path":64,"stem":65,"icon":66},"Dépannage","\u002Ffr\u002Fself-hosting\u002Ftroubleshooting","fr\u002F2.self-hosting\u002F13.troubleshooting","i-lucide-life-buoy",{"title":68,"path":69,"stem":70,"icon":71},"Prérequis","\u002Ffr\u002Fself-hosting\u002Frequirements","fr\u002F2.self-hosting\u002F2.requirements","i-lucide-cpu",{"title":73,"path":74,"stem":75,"icon":76},"Démarrage rapide (guidé)","\u002Ffr\u002Fself-hosting\u002Fquick-start","fr\u002F2.self-hosting\u002F3.quick-start","i-lucide-wand-2",{"title":78,"path":79,"stem":80,"icon":81},"Installation manuelle","\u002Ffr\u002Fself-hosting\u002Fmanual-install","fr\u002F2.self-hosting\u002F4.manual-install","i-lucide-terminal",{"title":83,"path":84,"stem":85,"icon":86},"Accélération GPU","\u002Ffr\u002Fself-hosting\u002Fgpu-acceleration","fr\u002F2.self-hosting\u002F5.gpu-acceleration","i-lucide-zap",{"title":88,"path":89,"stem":90,"icon":91},"Performances et mémoire","\u002Ffr\u002Fself-hosting\u002Fperformance-and-memory","fr\u002F2.self-hosting\u002F6.performance-and-memory","i-lucide-gauge",{"title":93,"path":94,"stem":95,"icon":96},"Référence de configuration","\u002Ffr\u002Fself-hosting\u002Fconfiguration-reference","fr\u002F2.self-hosting\u002F7.configuration-reference","i-lucide-sliders-horizontal",{"title":98,"path":99,"stem":100,"icon":101},"Modèles","\u002Ffr\u002Fself-hosting\u002Fmodels","fr\u002F2.self-hosting\u002F8.models","i-lucide-brain",{"title":103,"path":104,"stem":105,"icon":106},"Licence et activation","\u002Ffr\u002Fself-hosting\u002Flicensing","fr\u002F2.self-hosting\u002F9.licensing","i-lucide-key-round",{"title":108,"icon":109,"path":110,"stem":111,"children":112,"page":35},"Référence","i-lucide-book-open","\u002Ffr\u002Freference","fr\u002F3.reference",[113,118],{"title":114,"path":115,"stem":116,"icon":117},"Comment ça marche","\u002Ffr\u002Freference\u002Fhow-it-works","fr\u002F3.reference\u002F1.how-it-works","i-lucide-workflow",{"title":119,"path":120,"stem":121,"icon":122},"Données et confidentialité","\u002Ffr\u002Freference\u002Fdata-and-privacy","fr\u002F3.reference\u002F2.data-and-privacy","i-lucide-lock",{"id":124,"title":48,"body":125,"description":736,"extension":737,"links":738,"meta":739,"navigation":740,"path":49,"seo":741,"stem":50,"__hash__":744},"docs_fr\u002Ffr\u002F2.self-hosting\u002F10.backups.md",{"type":126,"value":127,"toc":713},"minimark",[128,132,137,157,171,175,181,243,246,250,253,356,360,364,370,376,379,415,419,427,468,470,518,522,702,706,709],[129,130,131],"p",{},"Vous êtes seul à détenir ces données. Mettez les sauvegardes en place dès le\npremier jour.",[133,134,136],"h2",{"id":135},"ce-qui-est-sauvegardé","Ce qui est sauvegardé",[129,138,139,143,144,147,148,152,153,156],{},[140,141,142],"strong",{},"Admin → Sauvegardes"," sauvegarde la ",[140,145,146],{},"base de données"," : comptes, collections,\nconversations, métadonnées des documents et index de recherche. Les sauvegardes\nsont des exports PostgreSQL standards nommés\n",[149,150,151],"code",{},"chronicler-AAAAMMJJ-HHMMSS.dump",", stockés dans le volume ",[149,154,155],{},"backend_uploads",".",[158,159,160,161,164,165,167,168,156],"warning",{},"Les fichiers importés d'origine vivent dans le même volume mais ne sont ",[140,162,163],{},"pas","\ndans l'export. Un plan de reprise complet, c'est : ces sauvegardes de base, plus\nune copie du volume ",[149,166,155],{},", plus votre ",[149,169,170],{},".env",[133,172,174],{"id":173},"sauvegardes-planifiées","Sauvegardes planifiées",[129,176,177,180],{},[140,178,179],{},"Admin → Sauvegardes → Sauvegardes automatiques"," :",[182,183,184,200],"table",{},[185,186,187],"thead",{},[188,189,190,194,197],"tr",{},[191,192,193],"th",{},"Réglage",[191,195,196],{},"Options",[191,198,199],{},"Remarques",[201,202,203,217,230],"tbody",{},[188,204,205,211,214],{},[206,207,208],"td",{},[140,209,210],{},"Fréquence",[206,212,213],{},"Désactivée, Quotidienne, Hebdomadaire",[206,215,216],{},"Quotidienne convient à la plupart.",[188,218,219,224,227],{},[206,220,221],{},[140,222,223],{},"Conserver",[206,225,226],{},"1 à 365",[206,228,229],{},"Les plus anciennes sont supprimées automatiquement au-delà du nombre.",[188,231,232,237,240],{},[206,233,234],{},[140,235,236],{},"Dossier externe",[206,238,239],{},"Un chemin dans le conteneur",[206,241,242],{},"Facultatif, et c'est le plus utile. Voir ci-dessous.",[129,244,245],{},"Après enregistrement, le panneau affiche la dernière exécution, la prochaine, et\nl'erreur du dernier échec s'il y en a eu un. Les changements s'appliquent sans\nredémarrage.",[133,247,249],{"id":248},"la-copie-externe","La copie externe",[129,251,252],{},"Une sauvegarde rangée dans le même volume Docker que les données ne survit pas à\nla panne qui vous inquiète vraiment. Pour en garder une copie ailleurs, montez un\ndossier de la machine hôte — un partage NAS, un disque externe — dans le\nconteneur backend.",[254,255,256,261,267,308,314,318,341,345],"steps",{},[257,258,260],"h3",{"id":259},"ajouter-le-montage-au-fichier-compose","Ajouter le montage au fichier compose",[129,262,263,264,180],{},"Sous le service ",[149,265,266],{},"backend",[268,269,275],"pre",{"className":270,"code":271,"filename":272,"language":273,"meta":274,"style":274},"language-yaml shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","    volumes:\n      - backend_uploads:\u002Fapp\u002Fuploads\n      - \u002Fmnt\u002Fnas\u002Fchronicler-backups:\u002Fmnt\u002Fbackups\n","docker-compose.yml","yaml","",[149,276,277,290,300],{"__ignoreMap":274},[278,279,282,286],"span",{"class":280,"line":281},"line",1,[278,283,285],{"class":284},"swJcz","    volumes",[278,287,289],{"class":288},"sMK4o",":\n",[278,291,293,296],{"class":280,"line":292},2,[278,294,295],{"class":288},"      -",[278,297,299],{"class":298},"sfazB"," backend_uploads:\u002Fapp\u002Fuploads\n",[278,301,303,305],{"class":280,"line":302},3,[278,304,295],{"class":288},[278,306,307],{"class":298}," \u002Fmnt\u002Fnas\u002Fchronicler-backups:\u002Fmnt\u002Fbackups\n",[129,309,310,311,156],{},"Sous Windows, la partie gauche est un chemin hôte comme ",[149,312,313],{},"D:\\backups",[257,315,317],{"id":316},"recréer-le-conteneur","Recréer le conteneur",[268,319,324],{"className":320,"code":321,"filename":322,"language":323,"meta":274,"style":274},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","docker compose up -d\n","Terminal","bash",[149,325,326],{"__ignoreMap":274},[278,327,328,332,335,338],{"class":280,"line":281},[278,329,331],{"class":330},"sBMFI","docker",[278,333,334],{"class":298}," compose",[278,336,337],{"class":298}," up",[278,339,340],{"class":298}," -d\n",[257,342,344],{"id":343},"renseigner-le-dossier-dans-la-console","Renseigner le dossier dans la console",[129,346,347,348,351,352,355],{},"Saisissez ",[149,349,350],{},"\u002Fmnt\u002Fbackups"," — le chemin ",[140,353,354],{},"dans"," le conteneur — comme dossier\nexterne, puis enregistrez. Chronicler teste l'écriture au moment de\nl'enregistrement et refuse un dossier inaccessible : une faute de frappe échoue\ntout de suite plutôt que silencieusement pendant des mois.",[357,358,359],"note",{},"Le fichier compose écrit par l'installation guidée ne contient pas ce montage.\nVous devez l'ajouter à la main, et le remettre après une mise à jour guidée qui\nremplace le fichier. Conserver votre propre copie du fichier compose évite cela.",[133,361,363],{"id":362},"sauvegardes-manuelles","Sauvegardes manuelles",[129,365,366,369],{},[140,367,368],{},"Sauvegarder maintenant"," en crée une immédiatement — à faire avant une mise à\njour ou toute manipulation risquée.",[129,371,372,375],{},[140,373,374],{},"Télécharger"," enregistre un export sur le poste depuis lequel vous utilisez\nl'application. C'est la copie externe la plus simple qui soit : téléchargez-en\nune de temps en temps et rangez-la en lieu sûr.",[129,377,378],{},"En ligne de commande :",[268,380,382],{"className":320,"code":381,"filename":322,"language":323,"meta":274,"style":274},"docker exec chronicler-postgres pg_dump -U chronicler -Fc chronicler_app > chronicler-backup.dump\n",[149,383,384],{"__ignoreMap":274},[278,385,386,388,391,394,397,400,403,406,409,412],{"class":280,"line":281},[278,387,331],{"class":330},[278,389,390],{"class":298}," exec",[278,392,393],{"class":298}," chronicler-postgres",[278,395,396],{"class":298}," pg_dump",[278,398,399],{"class":298}," -U",[278,401,402],{"class":298}," chronicler",[278,404,405],{"class":298}," -Fc",[278,407,408],{"class":298}," chronicler_app",[278,410,411],{"class":288}," >",[278,413,414],{"class":298}," chronicler-backup.dump\n",[133,416,418],{"id":417},"restaurer","Restaurer",[420,421,422,423,426],"caution",{},"Restaurer ",[140,424,425],{},"remplace toute la base de données",". Tout ce qui a été créé depuis\ncette sauvegarde disparaît — comptes, conversations, documents. C'est\nirréversible.",[254,428,429,433,439,443,446,449,457,461],{},[257,430,432],{"id":431},"sauvegarder-dabord-létat-actuel","Sauvegarder d'abord l'état actuel",[129,434,435,436],{},"Même une base abîmée vaut mieux que pas de recours. ",[140,437,438],{},"Sauvegarder maintenant.",[257,440,442],{"id":441},"prévenir-les-utilisateurs","Prévenir les utilisateurs",[129,444,445],{},"Il n'y a pas de mode maintenance. Toute personne utilisant l'application pendant\nune restauration verra des erreurs, et son travail peut être perdu.",[257,447,418],{"id":448},"restaurer-1",[129,450,451,453,454,456],{},[140,452,142],{},", trouvez l'archive, choisissez ",[140,455,418],{}," et\nconfirmez. L'action est inscrite au journal d'audit avec son auteur.",[257,458,460],{"id":459},"vérifier-puis-réindexer","Vérifier, puis réindexer",[129,462,463,464,467],{},"Connectez-vous, ouvrez quelques documents, lancez une recherche. Si les résultats\nsemblent faux, lancez ",[140,465,466],{},"Admin → Modèle → Tout réindexer"," : l'index d'un export\nancien peut être en retard sur les documents.",[129,469,378],{},[268,471,473],{"className":320,"code":472,"filename":322,"language":323,"meta":274,"style":274},"docker exec -i chronicler-postgres pg_restore -U chronicler -d chronicler_app \\\n  --clean --if-exists --no-owner \u003C chronicler-backup.dump\n",[149,474,475,502],{"__ignoreMap":274},[278,476,477,479,481,484,486,489,491,493,496,498],{"class":280,"line":281},[278,478,331],{"class":330},[278,480,390],{"class":298},[278,482,483],{"class":298}," -i",[278,485,393],{"class":298},[278,487,488],{"class":298}," pg_restore",[278,490,399],{"class":298},[278,492,402],{"class":298},[278,494,495],{"class":298}," -d",[278,497,408],{"class":298},[278,499,501],{"class":500},"sTEyZ"," \\\n",[278,503,504,507,510,513,516],{"class":280,"line":292},[278,505,506],{"class":298},"  --clean",[278,508,509],{"class":298}," --if-exists",[278,511,512],{"class":298}," --no-owner",[278,514,515],{"class":288}," \u003C",[278,517,414],{"class":298},[133,519,521],{"id":520},"déménager-sur-une-autre-machine","Déménager sur une autre machine",[254,523,524,528,540,544,559,563,570,574,579],{},[257,525,527],{"id":526},"sauvegarder-et-copier","Sauvegarder et copier",[129,529,530,531,533,534,536,537,539],{},"Prenez une sauvegarde fraîche et téléchargez-la. Copiez aussi votre\n",[149,532,272],{}," et votre ",[149,535,170],{}," : sans ce ",[149,538,170],{},", l'ancien volume de base\nest illisible.",[257,541,543],{"id":542},"installer-sur-la-nouvelle-machine","Installer sur la nouvelle machine",[129,545,546,547,551,552,554,555,558],{},"Suivez l'",[548,549,550],"a",{"href":79},"installation manuelle",", mais utilisez\nle ",[149,553,170],{}," ",[140,556,557],{},"existant"," au lieu de générer un nouveau mot de passe.",[257,560,562],{"id":561},"restaurer-puis-déplacer-la-licence","Restaurer, puis déplacer la licence",[129,564,565,566,569],{},"Restaurez l'export, puis libérez la licence sur l'ancienne installation et\nactivez-la sur la nouvelle (",[548,567,568],{"href":104},"Licence",").",[257,571,573],{"id":572},"copier-les-fichiers-importés","Copier les fichiers importés",[129,575,576,577,180],{},"L'export ne contient pas le contenu des fichiers. Transférez le volume\n",[149,578,155],{},[268,580,582],{"className":320,"code":581,"filename":322,"language":323,"meta":274,"style":274},"# sur l'ancienne machine\ndocker run --rm -v chronicler_backend_uploads:\u002Fdata -v \"$PWD\":\u002Fout alpine \\\n  tar czf \u002Fout\u002Fuploads.tgz -C \u002Fdata .\n\n# sur la nouvelle\ndocker run --rm -v chronicler_backend_uploads:\u002Fdata -v \"$PWD\":\u002Fin alpine \\\n  tar xzf \u002Fin\u002Fuploads.tgz -C \u002Fdata\n",[149,583,584,590,625,645,652,658,686],{"__ignoreMap":274},[278,585,586],{"class":280,"line":281},[278,587,589],{"class":588},"sHwdD","# sur l'ancienne machine\n",[278,591,592,594,597,600,603,606,608,611,614,617,620,623],{"class":280,"line":292},[278,593,331],{"class":330},[278,595,596],{"class":298}," run",[278,598,599],{"class":298}," --rm",[278,601,602],{"class":298}," -v",[278,604,605],{"class":298}," chronicler_backend_uploads:\u002Fdata",[278,607,602],{"class":298},[278,609,610],{"class":288}," \"",[278,612,613],{"class":500},"$PWD",[278,615,616],{"class":288},"\"",[278,618,619],{"class":298},":\u002Fout",[278,621,622],{"class":298}," alpine",[278,624,501],{"class":500},[278,626,627,630,633,636,639,642],{"class":280,"line":302},[278,628,629],{"class":298},"  tar",[278,631,632],{"class":298}," czf",[278,634,635],{"class":298}," \u002Fout\u002Fuploads.tgz",[278,637,638],{"class":298}," -C",[278,640,641],{"class":298}," \u002Fdata",[278,643,644],{"class":298}," .\n",[278,646,648],{"class":280,"line":647},4,[278,649,651],{"emptyLinePlaceholder":650},true,"\n",[278,653,655],{"class":280,"line":654},5,[278,656,657],{"class":588},"# sur la nouvelle\n",[278,659,661,663,665,667,669,671,673,675,677,679,682,684],{"class":280,"line":660},6,[278,662,331],{"class":330},[278,664,596],{"class":298},[278,666,599],{"class":298},[278,668,602],{"class":298},[278,670,605],{"class":298},[278,672,602],{"class":298},[278,674,610],{"class":288},[278,676,613],{"class":500},[278,678,616],{"class":288},[278,680,681],{"class":298},":\u002Fin",[278,683,622],{"class":298},[278,685,501],{"class":500},[278,687,689,691,694,697,699],{"class":280,"line":688},7,[278,690,629],{"class":298},[278,692,693],{"class":298}," xzf",[278,695,696],{"class":298}," \u002Fin\u002Fuploads.tgz",[278,698,638],{"class":298},[278,700,701],{"class":298}," \u002Fdata\n",[133,703,705],{"id":704},"testez-les","Testez-les",[129,707,708],{},"Une sauvegarde non testée n'est pas une sauvegarde. Une fois, sur une machine de\ntest, restaurez-en une et connectez-vous. Dix minutes maintenant, ou une mauvaise\ndécouverte plus tard.",[710,711,712],"style",{},"html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}",{"title":274,"searchDepth":292,"depth":292,"links":714},[715,716,717,722,723,729,735],{"id":135,"depth":292,"text":136},{"id":173,"depth":292,"text":174},{"id":248,"depth":292,"text":249,"children":718},[719,720,721],{"id":259,"depth":302,"text":260},{"id":316,"depth":302,"text":317},{"id":343,"depth":302,"text":344},{"id":362,"depth":292,"text":363},{"id":417,"depth":292,"text":418,"children":724},[725,726,727,728],{"id":431,"depth":302,"text":432},{"id":441,"depth":302,"text":442},{"id":448,"depth":302,"text":418},{"id":459,"depth":302,"text":460},{"id":520,"depth":292,"text":521,"children":730},[731,732,733,734],{"id":526,"depth":302,"text":527},{"id":542,"depth":302,"text":543},{"id":561,"depth":302,"text":562},{"id":572,"depth":302,"text":573},{"id":704,"depth":292,"text":705},"Sauvegardes planifiées, copie externe, et comment récupérer vos données.","md",null,{},{"icon":51},{"title":742,"description":743},"Sauvegardes et restauration Chronicler","Configurer les sauvegardes planifiées, garder une copie externe et restaurer un serveur Chronicler auto-hébergé.","gBaK6HgZqjChOHJH4WWn784XPmkP7vUXZ87lsy1227g",[746,748],{"title":43,"path":44,"stem":45,"description":747,"icon":46,"children":-1},"De quoi la pile auto-hébergée est faite, ce qui tourne où, et ce qui sort de la machine.",{"title":53,"path":54,"stem":55,"description":749,"icon":56,"children":-1},"L'application et le serveur se mettent à jour séparément. Voici comment.",1785092111514]