Optimiser Ubuntu 24.04 LTS pour un Serveur Docker
Ce guide s'adresse à tout les homelabbers qui font tourner de nombreuses "stacks" (Mastodon, Nextcloud, Bases de données) et qui souhaitent garantir la longévité de leur matériel et la fluidité de leurs services avec ce type de conf :

Vérification de la base
Avant de commencer, assurez-vous d'être sur une version stable et moderne.
- Vérifier sa version :
lsb_release -a - Vérifier son noyau :
uname -r
Note : Pour Docker, un noyau récent (6.8+) est recommandé pour une meilleure gestion des ressources.
Optimisation du Système de Fichiers (fstab)
Par défaut, Linux enregistre la date de dernier accès à chaque lecture de fichier. Avec des dizaines de conteneurs, cela génère des milliers d'écritures inutiles.
Action : Passer en mode noatime.
- Éditez votre fichier de montage :
sudo nano /etc/fstab - Sur la ligne de votre partition racine (
/), remplacezdefaultspardefaults,noatime. - Appliquez à chaud :
sudo mount -o remount /
Résultat : Moins de latence disque (I/O Wait) et moins d'usure pour votre SSD.
Configuration Avancée du Démon Docker
Docker fonctionne très bien "out of the box", mais pour 40 conteneurs, il faut l'encadrer.
Action : Créez ou modifiez /etc/docker/daemon.json :
{
"live-restore": true,
"log-driver": "json-file",
"log-opts": {
"max-size": "50m",
"max-file": "3"
},
"default-ulimits": {
"nofile": { "Name": "nofile", "Hard": 65536, "Soft": 65536 }
}
}
- Live-restore : Vos conteneurs restent allumés même si vous redémarrez Docker.
- Log-opts : Empêche les logs de remplir votre disque (limite à 3 fichiers de 50 Mo par conteneur).
- Ulimits : Autorise plus de fichiers ouverts simultanément (crucial pour les bases de données).
Gestion Intelligente de la RAM (Swappiness)
Si vous avez beaucoup de RAM (ex: 32 Go), vous ne voulez pas que le système utilise le disque (Swap) trop tôt.
Action :
- Vérifiez la valeur actuelle :
cat /proc/sys/vm/swappiness(souvent 60). - Passez-la à 10 pour privilégier la RAM :
sudo sysctl vm.swappiness=10. - Rendez-le permanent en ajoutant
vm.swappiness=10dans/etc/sysctl.conf.
Maintenance et Santé Matérielle
Un serveur optimisé est un serveur surveillé.
- Santé du SSD : Installez
smartmontoolset surveillez régulièrement lePercentage Usedet la température avecsmartctl -a /dev/nvme0n1. Une température de contrôleur au-delà de 80°C doit vous alerter sur le besoin d'un meilleur flux d'air.
Nettoyage régulier :
docker system prune -a # Supprime images et réseaux inutilisés
docker volume prune # Supprime les volumes orphelins
Conclusion
En appliquant ces réglages, vous transformez une installation standard en un serveur de production domestique robuste.
Vous réduisez l'usure de vos composants tout en augmentant la réactivité de vos applications.
Astuce Sécurité : Après chaque modification majeure dufstab, testez toujours votre configuration avecsudo findmnt --verifyavant de redémarrer !