Ce cours explique de manière complète et progressive comment déployer un projet Django sur un VPS Ubuntu. Il couvre toute la chaîne de production : préparation du serveur, création d'un utilisateur Linux, copie du projet, création de l'environnement virtuel, installation des dépendances, configuration .env, PostgreSQL, migrations, création superuser, collectstatic, Gunicorn, service systemd, configuration Nginx, reverse proxy, fichiers static/media, installation du SSL avec Certbot, redirection HTTPS, sécurité Django, pare-feu, logs, dépannage, sauvegardes PostgreSQL, sauvegardes media, restauration et checklist finale. L'objectif est de permettre à un débutant ou technicien de mettre un vrai site Django en ligne sans rien oublier.
✓Comprendre l'architecture d'un déploiement Django professionnel
✓Préparer un VPS Ubuntu pour Django
✓Configurer un nom de domaine et les DNS
✓Créer un utilisateur Linux dédié au projet
✓Installer Python, pip, venv, PostgreSQL, Nginx et outils système
✓Déployer le code Django sur le serveur
✓Créer et activer un environnement virtuel
✓Installer les dépendances requirements.txt
✓Configurer les variables d'environnement .env
✓Créer une base PostgreSQL et un utilisateur PostgreSQL
✓Configurer DATABASES dans settings.py
✓Appliquer les migrations Django
✓Créer un superuser de production
✓Configurer STATIC_ROOT, MEDIA_ROOT, ALLOWED_HOSTS et CSRF_TRUSTED_ORIGINS
✓Exécuter collectstatic correctement
✓Tester Django avec Gunicorn
✓Créer un service systemd pour Gunicorn
✓Configurer Nginx comme reverse proxy
✓Servir static files et media files avec Nginx
✓Installer SSL HTTPS avec Certbot
✓Sécuriser la configuration Django en production
✓Lire les logs Nginx, Gunicorn et PostgreSQL
✓Diagnostiquer les erreurs 400, 403, 404, 500, 502 et static files absents
✓Sauvegarder PostgreSQL et les fichiers media
✓Restaurer un projet Django en cas de problème
✓Créer une checklist finale de déploiement