Le but est de rendre les discussions plus agréable que les mails tout en étant plus accessible sur des points lié à la transmission de connaissance (i.e : accès aux archives) que minimaliste.
Le serveur est joignable à l'adresse https://discourse.faimaison.net/
Discourse répond sur 2 URL différente : discourse.faimaison.net et forum.faimaison.net
Comme nous n'installons pas de reverse proxy sur la même machine, nous utilisons le même nginx fourni par le build officiel.
Ceci signifie que pour chaque rebuild il faut remodifier la conf de nginx et renouveller les certificats. Pour ce faire il suffit simplement d'executer un script:
sudo /root/enable_redirs.sh
Une page par défaut avec discourse existe à ce sujet : https://forum.faimaison.net/privacy
La suppression d'un utilisateur ne peut pas se faire par l'utilisateur lui-même, cela doit passer par un administrateur pour l'instant. À l'avenir, cela pourrait se faire via un appel d'api via COIN.
Aussi, la suppression de l'utilisateur n'est pas tout à fait recommandé pour la continuité des discussions. À la plage, il s'agit d'anonymiser le compte. De cette manière, ce ne sera plus le pseudo de l'utilisateur qui apparait, mais un nom sous la forme anon12345. les échanges sont ainsi préservé sans savoir qui est exactement la personne.
Pour l'administration au quotidien (création de catégorie, modération, etc.) une connaissance de fonctionnement de discourse même est nécessaire et est un sujet à part entière.
Cette page ne fait état que de la configuration pour l'essentiel : particularité sur les email, les mises à jours et les backups.
configuré avec un compte dédié sur mail.faimaison.net
L'interface d'administration va prévenir lorsqu'une mise à jour est disponible. Par défaut, la mise à jour de discourse va entrainer la mise à jour automatique des plugins et des thèmes/composants.
Après chaque mise à jour il est nécessaire d'executer le script de redirection
Le tableau de bord de l'administrateur a un lien Rechercher les mises à jour ici. qui renvoi sur une page et vérifie si des mises à jours sont disponibles.
On peut aussi y aller directement via l'url : /admin/upgrade
De là, il suffit de cliquer sur le bouton update all.
Il est toutefois possible qu'il faut d'abord mettre à jour docker manager. Dans ce cas là toutes les autres mises à jours sont impossible, les bottons sont grisé. L'extension docker manager peut se mettre à jour en allant tout en bas de la page
La mise à jour par ligne de commande est une approche alternative mais il arrive que ce soit obligatoire dans certains cas. Un message préviendra lorsque ce sera nécessaire. Dans tous les cas, pour ce faire il faut réaliser les commande suivante. Avec l'utilisateur root :
cd /var/discourse ./launcher rebuild app
Reconstruire une image ne supprime pas les images précédente, On accumule donc les images et perd de l'espace. Pour supprimer les containers et images inutilisé faire la commande suivante :
cd /var/discourse ./launcher cleanup
L'application demandera une validation pour la suppression de toutes ces données
Par défaut Discourse réalise ses propres sauvegarde mais les stock en locale dans le répertoire : /var/discourse/shared/standalone/backups/default
.
Le backup se présente comme une tarball. voici un exemple : faimaison-2021-04-03-033134-v20210318020143.tar.gz
Cette tarball contient :
Les backups ont été désactivé car on gère avec PBS
le fichier de configuration ne fait pas parti de la tarball. Il faut le récupérer séparément.
la VM de discourse est backupé par PBS tous les jours
UFW est activé sur la machine. l'ensemble des ports sont bloqué en dehors de SSH, http, https, pop3, smtp(s) et imap(s). Les flux pour les protocoles de mails sont là pour des raisons historique mais pourraite être supprimé car Discourse n'est plus le serveur gérant également les mails.
Zabbix monitor la machine. En plus du monitoring OS, un scénario web a été mis en place mais sans trigger pour l'instant De plus le template Nginx with http a été configuré sur le host. Il test l'adresse : http://89.234.177.198:8080/basic_status pour s'assurer que nginx est encore up.