Docker conserve de nombreux fichiers inutilisés : anciens volumes, anciennes images, etc.
Pour les nettoyer :
```
docker system prune
```
# Mastodon
Mastodon a plusieurs nettoyages possibles pour vider les différents niveaux de cache.
Tous les caches peuvent être nettoyés par grâce à `tootctl`, utilisable comme suit :
```
docker-compose exec web tootctl <commande>
```
Les principaux niveaux de nettoyage :
- vieux média : `tootctl media remove`
- média non référencés : `tootctl media remove-orphans`
- comptes distants qui n'existent plus (lourd) : `tootctl accounts cull`
- statuts qui n'existent plus (très lourd) : `tootctl statuses remove`
Nettoyer le wal base de données après le nettoyage des comptes et statuts, qui causent de nombreuses écritures.
# Matrix
Matrix conserve un cache des fichiers uploadés sur d'autres homeservers.
Pour le nettoyer, il faut disposer de `axon` correctement configuré, puis :
```
python -m axon.cli media purge
```
# Bases de données
Les bases de données génèrent des journaux WAL rapidement volumineux, pour vérifier le volume :
```
du -sh wal/
```
Ou pour vérifier et classer tous les WAL :
```
du -sh /srv/*/*/wal | sort -h
```
## Bases de données MySQL
Un script de configuration permet de prendre un snapshot de base et de réinitialiser le WAL, qui est sauvegardé par ailleurs. Ce script interrompt la base, une annonce de brève interruption est donc nécessaire, et certains services doivent être redémarrés ensuite :
Le chemin à employer est celui vers l'application, si possible le chemin complet. Généralement, le basedir et le db peuvent être omis. Le basedir doit être précisé lorsque le répertoire de base est différent de celui de l'application, et le db précisé lorsque la base de données n'est pas stockée dans le répertoire `db`.
Dans le cas général donc :
```
/srv/config/mysql_checkpoint /srv/apps/<app>
```
## Bases de données PostgreSQL
Un script de configuration permet de prendre un snapshot et de réinitialiser le WAL. Il n'interrompt pas l'application mais peut ralentir légèrement les accès à la base. Aucune annonce n'est nécessaire, mais ne pas en lancer plusieurs en parallèle :
Le chemin à employer est celui vers l'application, si possible le chemin complet. L'utilisateur est l'utilisateur de la base de données, vérifiable dans le `.env`. Généralement, le basedir et le db peuvent être omis. Le basedir doit être précisé lorsque le répertoire de base est différent de celui de l'application, et le db précisé lorsque la base de données n'est pas stockée dans le répertoire `db`.
Les personnes ayant un rôle `Modérateur` ou `Administrateur` recevront une notification par mail lorsque un signalement sera soumis. A noter que certaines applications mobiles peuvent également notifier l'utilisateur.
# Agir en tant que modérateur
Lorsque l'on a le rôle de `Modérateur`, de nouveaux menus font leur apparition dans l'interface de Mastodon. Notamment au niveau des toots (messages) :