DevOps

Déployer un site web avec Docker et Nginx : tutoriel complet

ByteCraft 3 mars 2026 15 min

Prérequis

Pour suivre ce tutoriel, vous aurez besoin d'un serveur Linux (Ubuntu 22.04+), Docker et Docker Compose installés, et un nom de domaine pointant vers votre serveur.

Architecture de déploiement

Notre stack sera composée de trois éléments : votre application (dans un conteneur Docker), un reverse proxy Nginx (dans un autre conteneur), et Certbot pour les certificats SSL Let's Encrypt. Docker Compose orchestre le tout.

Créer le Dockerfile de l'application

Commencez par containeriser votre application. Que ce soit un site statique Astro, une app React ou une API Node.js, le principe est le même : un Dockerfile multi-stage qui build puis serve votre application.

Configurer Nginx comme reverse proxy

Nginx va recevoir le trafic HTTPS et le rediriger vers votre conteneur applicatif. La configuration inclut la gestion des headers de sécurité, la compression gzip, et le caching des assets statiques.

Automatiser avec Docker Compose

Docker Compose simplifie le déploiement en décrivant toute votre stack dans un fichier YAML. Un simple docker compose up -d lance l'ensemble de vos services.

SSL automatique avec Certbot

Let's Encrypt fournit des certificats SSL gratuits. Certbot renouvelle automatiquement vos certificats avant leur expiration. Plus d'excuse pour ne pas avoir HTTPS.

Besoin d'aide pour vos déploiements ? Notre équipe DevOps à Rabat gère votre infrastructure de A à Z.