Maison >développement back-end >Tutoriel Python >Django Heroku : Guide Complet de Déploiement �

Django Heroku : Guide Complet de Déploiement �

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2025-01-29 10:12:12225parcourir

Django   Heroku : Guide Complet de Déploiement �

Ce guide complet vous explique étape par étape comment déployer une application Django sur Heroku et configurer une base de données PostgreSQL.

Prérequis:

Avant de commencer, vérifiez que vous disposez de :

  • Python 3.x
  • Git
  • Un compte Heroku
  • Une application Django fonctionnelle en local
  • L'interface de ligne de commande Heroku (Heroku CLI)

Préparation du projet:

  1. Structure du projet: Votre projet doit ressembler à ceci :
<code>my_project/
├── manage.py
├── my_project/
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
├── requirements.txt
└── Procfile</code>
  1. Configuration des dépendances:

Créez le fichier requirements.txt :

<code class="language-bash">pip freeze > requirements.txt</code>

Ajoutez les dépendances suivantes :

<code>django
gunicorn
psycopg2-binary
django-environ
whitenoise
dj-database-url</code>
  1. Configuration de Django pour Heroku:

Modifiez le fichier settings.py :

<code class="language-python">import os
import dj_database_url
from pathlib import Path

BASE_DIR = Path(__file__).resolve().parent.parent

SECRET_KEY = os.environ.get('SECRET_KEY', 'votre-clé-secrète-par-défaut')

DEBUG = os.environ.get('DEBUG', 'True') == 'True'

ALLOWED_HOSTS = os.environ.get('ALLOWED_HOSTS', '').split(',')

DATABASES = {
    'default': dj_database_url.config(
        default=os.environ.get('DATABASE_URL', 'sqlite:///db.sqlite3'),
        conn_max_age=600
    )
}

STATIC_URL = '/static/'
STATIC_ROOT = BASE_DIR / 'staticfiles'
STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'

MIDDLEWARE = [
    # ...
    'whitenoise.middleware.WhiteNoiseMiddleware',
]</code>
  1. Création du Procfile:

Créez un fichier Procfile à la racine du projet avec le contenu suivant :

<code>web: gunicorn my_project.wsgi</code>

Déploiement sur Heroku:

  1. Création de l'application Heroku:
<code class="language-bash">heroku create mon-app-django</code>
  1. Configuration des variables d'environnement:
<code class="language-bash">heroku config:set SECRET_KEY='votre-clé-secrète'
heroku config:set DEBUG='False'
heroku config:set ALLOWED_HOSTS='.herokuapp.com'</code>
  1. Base de données PostgreSQL: (Suite dans la prochaine section)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn