Django

Un framework web Python qui favorise le développement rapide et une conception claire et pragmatique.

1. SSH vers votre serveur

ssh root@<server-ip>

2. Trouver les identifiants de connexion

  • Utilisateur par défaut : django
  • Mot de passe stocké dans : /root/.cloudzy-creds

(Facultatif) Modifiez le mot de passe par défaut : passwd django

3. Passer à l'utilisateur de l'application

su - django

4. PostgreSQL (facultatif)

Si PostgreSQL a été installé, configurez la base de données et l'utilisateur (exemple) :

sudo -u postgres psql
CREATE DATABASE <db>;
CREATE USER <user> WITH PASSWORD <password>;
GRANT ALL PRIVILEGES ON DATABASE <db> TO <user>;
q

Puis mettre à jour settings.py DATABASES avec l'hôte localhost, nom de la base de données, utilisateur et mot de passe. Exécutez python manage.py migrate.

5. Déployez votre application

Un exemple d'application Flask est déjà en cours d'exécution et accessible à l'adresse suivante : http://<server-ip

Pour déployer votre propre application :

  1. Accédez au répertoire de votre application (ou clonez un nouveau projet) : cd ~/django_app
  2. (Facultatif) Remplacer l'application par défaut : git clone <your_repo_url> .
  3. Activer l'environnement virtuel : source venv/bin/activate
  4. Installez les paquets requis : pip install -r requirements.txt
  5. Ajuster settings.py: définir ALLOWED_HOSTS à votre domaine/IP et assurez-vous que STATIC_ROOT existe.
  6. Migrer la base de données : python manage.py migrate
  7. Collecter l'électricité statique dans STATIC_ROOT: python manage.py collectstatic --noinput
  8. Redémarrez Gunicorn pour appliquer les modifications : sudo systemctl restart gunicorn
  9. Redémarrer Nginx : sudo systemctl restart nginx

6. Accédez à votre application

Your Django app is available at: http://<server-ip

Nginx effectue un proxy inverse des requêtes vers Gunicorn via un socket Unix.

7. Changer de port ou de domaine ?

Pour modifier le domaine, le port ou ajouter un certificat SSL :

  1. Modifier la configuration du site Nginx : sudo nano /etc/nginx/sites-available/gunicorn_django
  2. Configuration du test : sudo nginx -t
  3. Recharger Nginx : sudo systemctl restart nginx

8. Activer HTTPS (facultatif)

Utilisez Certbot pour activer HTTPS.

Installez certbot :

sudo apt install certbot python3-certbot-nginx -y

Obtenir des certificats et mettre à jour Nginx automatiquement :

sudo certbot --nginx -d example.com

Test :

nginx -t && sudo systemctl reload nginx

Détails de la demande