Kresus

Administration

Configuration

La toute première chose à faire avant d'utiliser Kresus est de le configurer, afin qu'il puisse fonctionner de manière optimale selon vos préférences !

Avec un fichier config.ini

Générez d'abord une configuration vide avec la commande ci-dessous.

./bin/kresus.js 'create:config' > config.ini

⚠️ Note: pour les versions précédant la 0.16 cette commande n'existe pas. Vous pouvez néanmoins trouver la liste des options disponibles dans le fichier config.example.ini.

Modifiez ensuite le fichier config.ini en définissant les options qui vous sont propres et passez ensuite l'argument -c path/to/config.ini à Kresus au lancement.

Sécurité : En mode production (NODE_ENV=production), si le fichier de configuration ne fournit pas uniquement les droits de lecture ou lecture/écriture à son propriétaire, en utilisant les permissions du système de fichier, Kresus refusera de démarrer.

Avec des variables d'environnement

Notez que chaque option de configuration a une variable d'environnement associée : si la variable d'environnement est définie, elle surchargera la configuration du fichier INI ou la valeur par défaut. Référez-vous au fichier config.ini.example pour trouver toutes les variables d'environnement utilisables.

Base de données SQL

À partir de la version 0.16 incluse, il est nécessaire de fournir un fichier de configuration à Kresus pour définir quel système de base de données sera utilisé. Nous vous invitons à vous référer au fichier exemple pour découvrir les options associées à la base de données.

La seule base de données compatible avec Kresus et recommandée en production est PostgreSQL.

Il est fortement recommandé d'éviter sqlite en production. sqlite ne supporte pas très bien les migrations de structures et de données. Nous recommandons uniquement l'utilisation de sqlite à des fins de tests et de développement.

Si vous décidez d'utiliser sqlite, il vous faudra installer le paquet sqlite3: npm install --save sqlite3.

Migrer depuis l'ancien système vers SQL

Avant la version 0.16, Kresus utilisait un autre système de base de données sur disque peu performant. Le passage vers une base de données SQL permet d'améliorer généralement les performances et d'ouvrir de nouveaux horizons pour de nouvelles fonctionnalités.

Il est conseillé d'effectuer un backup de votre instance avant d'effectuer la migration vers le système SQL.

Depuis la version 0.15 vers la 0.16

Si vous utilisiez la version 0.15 et êtes passé à la version 0.16, alors la migration devrait se dérouler automatiquement au démarrage de Kresus, une seule fois (si elle réussit). Vos logs devraient vous informer si cette migration a bien eu lieu ou non ; si ce n'est pas le cas, merci de nous signaler le souci.

Depuis une version antérieure à 0.14 incluse vers la 0.16

Si vous utilisiez une version antérieure à la version 0.15 avant le passage vers SQL (par exemple : vous utilisez la version 0.14 et passez directement à la 0.16), alors vous pouvez exporter toutes vos données grâce à l'outil kresus-export-cozydb :

Mettre en place les notifications avec Apprise

Pour que les utilisateur.ice.s de votre instance aient accès aux notifications via Apprise, il est nécessaire de définir un serveur d'API Apprise. Dans votre fichier de configuration config.ini, remplissez la ligne suivante :

appriseApiBaseUrl=http://localhost:8000/

Recommandations pare-feu

Vous devrez définir les autorisations suivantes :

Backup / restauration d'une instance

Pour ces deux processus, il est fortement conseillé d'éteindre Kresus, pour éviter que les données ne soient modifiées alors qu'elles sont en train d'être copiées.

Backup

Restauration

Le processus de restauration consiste simplement en la restauration de tous les fichiers sauvegardés lors de l'étape de backup.