Salut à tous. Je m’appelle Lee, et j’héberge Discourse moi-même de manière intermittente depuis 2013. Je me souviens avoir dû me débattre avec rbenv pour commencer. Je me souviens avoir dû compiler nginx avec Phusion Passenger pour que les choses fonctionnent. Je me souviens avoir discuté avec @sam il y a probablement dix ans que passer à Docker revenait à capituler devant la faiblesse des développeurs qui disent « ça marche sur ma machine et avec mon cauchemar de dotfiles » (et j’avais complètement tort !). Je me souviens de la première fois où j’ai entendu l’expression « bike-shedding ». Pour citer l’homme, je me souviens de tout.
Après plusieurs années d’absence, j’ai eu l’occasion de revenir à l’auto-hébergement de Discourse pour remplacer les commentaires natifs de Wordpress sur un site météo de la région de Houston qui reçoit généralement environ 10 000 pages vues par jour, mais qui peut atteindre environ 2 millions de pages vues par jour pour environ 1 million de visiteurs uniques pendant les ouragans. Nous avons lutté pendant des années avec les commentaires natifs de Wordpress, mais depuis mercredi dernier, nous sommes en ligne avec Discourse auto-hébergé. (Et sur Graviton3, rien de moins ! Sérieusement, ça fonctionne et c’est génial.)
Voici le point que j’essaie d’aborder : nous sommes en 2025, et en tant qu’auto-hébergeur, je dois toujours gérer manuellement mon espace d’images Docker. Je vous présente une histoire sur /dev/root, racontée en extraits de code, après moins d’une semaine en production :
[11:49:56] 0 ✓ (1.8ms)
root@discourse:/var/discourse # df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 30G 21G 9.6G 69% /
tmpfs 7.7G 0 7.7G 0% /dev/shm
tmpfs 3.1G 1.1M 3.1G 1% /run
tmpfs 5.0M 0 5.0M 0% /run/lock
efivarfs 128K 3.6K 125K 3% /sys/firmware/efi/efivars
/dev/nvme1n1p16 891M 109M 720M 14% /boot
/dev/nvme1n1p15 98M 6.4M 92M 7% /boot/efi
/dev/nvme0n1 32G 346M 30G 2% /var/discourse
tmpfs 1.6G 12K 1.6G 1% /run/user/1001
overlay 30G 21G 9.6G 69% /var/lib/docker/overlay2/5a649418bbfc064f488e895572eec1ace487a3eaa324fe1d8e3b395e6c5e3645/merged
[11:49:59] 0 ✓ (4.8ms)
root@discourse:/var/discourse # ./launcher cleanup
WARNING! This will remove all stopped containers.
Are you sure you want to continue? [y/N] y
Total reclaimed space: 0B
WARNING! This will remove all images without at least one container associated to them.
Are you sure you want to continue? [y/N] y
Deleted Images:
untagged: discourse/base@sha256:3696bdf18652b5455bd33795ec3b8e0f201c17a04f0e0126fc0317ed821373cd
....
[une TRÈS longue série de lignes supprimées]
....
Total reclaimed space: 12.43GB
[11:50:34] 0 ✓ (27.8s)
root@discourse:/var/discourse # df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 30G 6.9G 24G 23% /
tmpfs 7.7G 0 7.7G 0% /dev/shm
tmpfs 3.1G 1.1M 3.1G 1% /run
tmpfs 5.0M 0 5.0M 0% /run/lock
efivarfs 128K 3.6K 125K 3% /sys/firmware/efi/efivars
/dev/nvme1n1p16 891M 109M 720M 14% /boot
/dev/nvme1n1p15 98M 6.4M 92M 7% /boot/efi
/dev/nvme0n1 32G 346M 30G 2% /var/discourse
tmpfs 1.6G 12K 1.6G 1% /run/user/1001
overlay 30G 6.9G 24G 23% /var/lib/docker/overlay2/5a649418bbfc064f488e895572eec1ace487a3eaa324fe1d8e3b395e6c5e3645/merged
[11:55:28] 0 ✓ (3.3ms)
root@discourse:/var/discourse #
Je vous aime. J’aime Discourse. Je suis marié au produit et j’ai l’intention de continuer à l’utiliser plus ou moins pour toujours.
Mais, genre… juste, pourquoi. Pourquoi sommes-nous en 2025 et je dois encore, par ma propre faute, me débattre avec launcher cleanup ? Pourquoi la gestion des images n’est-elle pas une fonction inhérente de launcher ?
Encore une fois, je vous aime. J’ai choisi Discourse pour SCW parce que je crois en ce que vous avez construit et j’adore l’utiliser. Mais genre… c’est la moitié de mon pauvre volume de démarrage AMI qui est occupé par des trucs inutiles qui pourraient – du moins si je comprends la partie technique – être gérés automatiquement.
Je ne veux pas me plaindre – je fais juste un point après quelques années d’absence de la chaise d’administrateur. J’adore la détection de spam par IA et le triage par IA, surtout dans un forum météo où les publications politiquement chargées concernant le changement climatique (pour ou contre) sont une caractéristique régulière. Merci pour tout <3