Installer un serveur Docker pour des containers en production exige des choix techniques précis et une gestion rigoureuse des services exposés au public. La fiabilité passe par une plateforme stable, une résolution DNS correcte et une stratégie de sauvegarde adaptée aux volumes Docker.
Ce guide rassemble une stack opérationnelle courante incluant Traefik, WireGuard, Netdata, Portainer et Nextcloud, déployable sur un hôte Ubuntu ou équivalent. Les paragraphes qui suivent recensent les étapes clés et les configurations pragmatiques pour la mise en production.
A retenir :
- Nom de domaine avec enregistrements A pour racine et sous‑domaines
- Ouverture des ports 80 et 443 sur le routeur
- Sauvegardes nocturnes des volumes vers un disque externe monté
- Utilisation de Traefik, WireGuard, Netdata, Portainer et Nextcloud
Préparer un serveur Ubuntu pour Docker en production
Pour démarrer la mise en production, commencez par sécuriser l’hôte et valider la résolution DNS vers l’IP publique. Assurez-vous que Ubuntu ou la distribution choisie dispose des paquets nécessaires et que les ports 80 et 443 sont redirigés depuis votre box.
Selon Docker, l’installation officielle sur Ubuntu nécessite l’ajout de la clé GPG et du dépôt officiel avant l’installation des paquets. Selon Traefik, il est recommandé de stocker les certificats dans un volume persistant pour éviter les pertes lors des tests.
En parallèle, créez un répertoire sécurisé pour la stack, configurez des volumes nommés et préparez les permissions afin d’isoler les fichiers sensibles. Cette préparation facilite ensuite l’orchestration avec docker-compose ou les outils de gestion.
Points système Docker :
- Partitions séparées pour /var/lib/docker
- Volumes nommés pour données critiques
- Gestion des logs vers un disque dédié
- Rotation des images et nettoyage régulier
Plateforme
Avantage principal
Remarque
Ubuntu
Large compatibilité et documentation officielle
Choix recommandé pour serveurs physiques et VPS
CentOS
Stabilité entreprise et longue maintenance
Versions récentes basées sur CentOS Stream
Red Hat
Soutien commercial et certifications
Souvent privilégié en contextes corporate
AWS / GCP / OVHcloud
Scalabilité et services managés
Coût et configuration réseau à anticiper
« J’ai migré un petit service vers Ubuntu 22.04 et Docker, la simplicité d’installation a réduit le délai de déploiement »
Alice L.
Pour clore cette étape, vérifiez que docker run hello-world s’exécute sans erreur et que les volumes sont montés comme prévu. Ce contrôle préparera le déploiement de la stack applicative et la configuration de l’inverseur de proxy.
Déployer une stack sécurisée avec Traefik, WireGuard et Portainer
Après avoir préparé l’hôte, placez un reverse proxy pour exposer proprement vos services et gérer les certificats automatisés. Traefik s’intègre directement avec Docker grâce aux labels, et il automatise le routage TLS pour vos domaines.
Selon Traefik, les labels permettent d’indiquer les règles d’hébergement et les résolveurs ACME pour Let’s Encrypt. Selon Docker, il est préférable d’exécuter Traefik avec accès au socket Docker pour détecter les containers dynamiquement.
WireGuard complète la stack en offrant un accès privé et chiffré à l’interface d’administration de vos services lorsqu’il est nécessaire. Portainer facilite la gestion quotidienne des containers pour les équipes moins expertes en ligne de commande.
Configuration opérationnelle :
- Traefik en frontal pour TLS et routage
- WireGuard pour accès d’administration sécurisé
- Portainer pour administration graphique des containers
- Volumes chiffrés pour données sensibles
Service
Port exposé
Rôle
Remarque
Traefik
80, 443
Reverse proxy et gestion TLS
Stocker acme.json dans volume persistant
WireGuard
UDP configurable
VPN d’administration
Choisir un port ouvert sur les réseaux publics
Portainer
9000
Dashboard de gestion Docker
Restreindre l’accès via Traefik et auth
Netdata
19999
Supervision en temps réel
Exposer uniquement via Traefik avec auth basique
« J’ai configuré Traefik pour plusieurs sous-domaines, les certificats se renouvellent automatiquement et cela a stabilisé nos déploiements »
Marc D.
Pour finir cette phase, testez les règles de routage pour chaque sous‑domaine et simulez des renouvellements de certificats sur un environnement de staging. Cette vérification confirmera la robustesse de l’exposition publique avant le basculement en production.
Superviser, sauvegarder et maintenir vos containers Docker en production
Après le déploiement initial, la surveillance et les sauvegardes garantissent la résilience des services face aux incidents matériels ou logiciels. Netdata permet d’observer en temps réel l’utilisation CPU, mémoire et I/O, tandis que les backups réguliers protègent les volumes critiques.
Selon Netdata, un monitoring granulaire facilite le diagnostic rapide des anomalies et réduit les temps d’intervention. Selon Offen, l’outil de sauvegarde de volumes Docker peut automatiser des archives quotidiennes et gérer la rétention sans intervention manuelle.
En pratique, planifiez des sauvegardes nocturnes des volumes Nextcloud et de la base MariaDB, en conservant une rotation hebdomadaire. La procédure de restauration doit être testée pour valider la cohérence des dumps et archives.
Sauvegardes planifiées :
- Dump de la base et tar des volumes chaque nuit
- Rotation hebdomadaire des archives sur disque dédié
- Tests de restauration trimestriels documentés
- Monitoring des échecs de sauvegarde avec alertes
Objet
Fréquence
Méthode
Conservation
Nextcloud data
Quotidienne
Archive tar sur disque monté
7 jours rotatifs
Base MariaDB
Quotidienne
Dump SQL automatisé
7 jours rotatifs
Configurations Traefik
Après changement
Copie du acme.json vers archive
Conserver plusieurs versions
Volumes système Docker
Hebdomadaire
Snapshot logique ou copie
4 semaines
« J’ai récupéré un Nextcloud corrompu grâce à une archive testée, la procédure de restauration m’a évité une perte de données »
Sophie B.
Enfin, mettez à jour régulièrement les images et automatisez les tests de montée de version pour réduire les régressions. Ces bonnes pratiques simplifient l’évolution vers des architectures plus vastes, comme l’intégration éventuelle de Kubernetes ou de Rancher.
« L’administration via Portainer a permis à notre petite équipe d’être autonome pour la plupart des interventions courantes »
Paul R.
Plus loin, envisagez des migrations partielles vers des clouds publics selon vos besoins, en évaluant AWS, Google Cloud Platform et OVHcloud pour l’hébergement ou la redondance. Le choix d’un fournisseur dépendra de la latence, du coût et de la conformité attendus.
Source : Docker, « Install Docker Engine on Ubuntu », Docker Documentation, 2024 ; Traefik Labs, « Traefik », GitHub, 2023 ; Offen, « docker-volume-backup », GitHub, 2022.
