Maison  >  Article  >  développement back-end  >  Application Django prête pour la production

Application Django prête pour la production

DDD
DDDoriginal
2024-10-19 06:13:021003parcourir

Django application for production ready

Pour configurer une application Django pour la production avec les exigences suivantes, vous pouvez suivre les étapes décrites ci-dessous :

  1. Configurez le compartiment AWS S3 pour les fichiers multimédias :

Installez boto3 et django-storages pour intégrer AWS S3 à votre application Django :

pip installe boto3 django-storages

Mettez à jour les paramètres Django (settings.py) pour configurer AWS S3 :

paramètres.py

Configurations AWS S3

AWS_ACCESS_KEY_ID = 'votre-clé-d'accès'
AWS_SECRET_ACCESS_KEY = 'votre-clé-secrète'
AWS_STORAGE_BUCKET_NAME = 'votre-nom-de-bucket'
AWS_S3_REGION_NAME = 'votre-région' # par exemple, 'us-east-1'
AWS_S3_CUSTOM_DOMAIN = f'{AWS_STORAGE_BUCKET_NAME}.s3.amazonaws.com'

Configuration des fichiers multimédias

MEDIA_URL = f'https://{AWS_S3_CUSTOM_DOMAIN}/media/'
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'

  1. Configurer la base de données PostgreSQL lors du rendu :

Configurez votre base de données sur Render et notez les détails de connexion.

Installez psycopg2 pour connecter Django à PostgreSQL :

pip installe psycopg2-binary

Mettez à jour vos paramètres.py :

paramètres.py

BASES DE DONNÉES = {
'par défaut' : {
'MOTEUR' : 'django.db.backends.postgresql',
'NOM' : 'votre-nom-de-base de données',
'USER' : 'votre-utilisateur-de-base de données',
'MOT DE PASSE' : 'votre-mot de passe-base de données',
'HOST' : 'votre-hôte-de-base de données',
'PORT' : 'votre-port-db',
>
>

  1. Servir des fichiers statiques à l'aide de WhiteNoise :

Installez WhiteNoise pour servir des fichiers statiques :

pip installer le bruit blanc

Mettez à jour MIDDLEWARE et STATICFILES_STORAGE dans vos paramètres.py :

paramètres.py

MIDDLEWARE = ​​[
'django.middleware.security.SecurityMiddleware',
'whitenoise.middleware.WhiteNoiseMiddleware', # Ajoutez ceci après SecurityMiddleware
#Autres middlewares
]

Fichiers statiques (CSS, JavaScript, Images)

STATIC_URL = '/static/'
STATIC_ROOT = BASE_DIR / 'fichiers statiques'

Configuration du bruit blanc

STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'

  1. Paramètres de production supplémentaires :

Paramètres de sécurité :

paramètres.py

DEBUG = Faux
ALLOWED_HOSTS = ['votre-domaine.com', 'votre-render-subdomain.onrender.com']

Paramètres de sécurité

SECURE_SSL_REDIRECT = Vrai
SESSION_COOKIE_SECURE = Vrai
CSRF_COOKIE_SECURE = Vrai

Collecter les fichiers statiques : exécutez la commande suivante pour collecter tous les fichiers statiques :

python manage.py collectstatic

  1. Déployer sur le rendu :

Configurez votre projet sur Render en vous connectant à votre référentiel GitHub.

Définissez des variables d'environnement sur la plateforme de rendu pour vos paramètres Django (par exemple, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, DJANGO_SECRET_KEY, etc.).

Configurez les commandes build et start :

Commande de construction

pip install -r exigences.txt

Démarrer la commande

gunicorn votre_nom_projet.wsgi:application

Suivre ces étapes garantira que votre application Django est prête pour la production, avec des fichiers multimédias hébergés sur AWS S3, une base de données PostgreSQL sur Render et des fichiers statiques servis efficacement à l'aide de WhiteNoise.

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