Maison développement back-end Tutoriel Python Déployer une application Django depuis GitHub sur AWS Lightsail à l'aide de la pile Bitnami Django

Déployer une application Django depuis GitHub sur AWS Lightsail à l'aide de la pile Bitnami Django

Dec 23, 2024 am 04:58 AM

Dans ce didacticiel, je vais vous guider dans le déploiement de votre application Web Django hébergée sur GitHub sur une instance AWS Lightsail à l'aide de Bitnami Pile Django. Bitnami simplifie le déploiement en fournissant un environnement préconfiguré et prêt pour la production qui comprend Django, un serveur Web (Nginx ou Apache) et une base de données (PostgreSQL ou MySQL).

À la fin de ce didacticiel, votre projet Django de GitHub sera opérationnel sur AWS Lightsail avec une configuration minimale.


Pourquoi choisir AWS Lightsail pour le déploiement de Django ?

AWS Lightsail est un service cloud facile à utiliser et abordable, idéal pour héberger des applications Django. Il fournit des serveurs privés virtuels (instances) avec des fonctionnalités de gestion simples telles que des adresses IP statiques, des piles préconfigurées et une tarification prévisible. Voici pourquoi c'est un excellent choix pour Django :

  • Prix abordables : faibles coûts initiaux avec des prix prévisibles.
  • Configuration simplifiée : interface facile à utiliser pour un déploiement rapide.
  • Évolutivité : s'adapte bien aux petites et moyennes applications.
  • Piles préconfigurées : configuration d'environnement simplifiée, y compris Django.

Guide étape par étape

1. Créer une instance Lightsail à l'aide de la pile Bitnami Django

Connectez-vous à AWS Lightsail :

  • Accédez à la console Amazon Lightsail.

Créer une nouvelle instance :

  • Cliquez sur Créer une instance dans le tableau de bord Lightsail.
  • Sous Applications, choisissez Django parmi les options de la pile Bitnami.

Deploy a Django App from GitHub on AWS Lightsail Using the Bitnami Django Stack

  • Sélectionnez la Région la plus proche de votre public cible pour réduire la latence.
  • Choisissez un plan d'instance. Le forfait à 5 $/mois convient aux petites applications Django.

Deploy a Django App from GitHub on AWS Lightsail Using the Bitnami Django Stack

  • Nommez votre instance (par exemple, django-app-bitnami).
  • Téléchargez ou utilisez une clé SSH existante pour vous connecter à votre instance.
  • Cliquez sur Créer une instance pour lancer votre instance Django.

2. Accédez à votre instance Lightsail

Une fois votre instance Lightsail exécutée, vous devrez vous y connecter en SSH.

Obtenir l'IP statique :

  • Accédez à l'onglet Réseau dans la console Lightsail.
  • Allouez et attachez une IP statique à votre instance Lightsail. Cette IP statique sera utilisée pour accéder à votre application Django.

SSH dans l'instance :

  • Vous pouvez SSH directement depuis la console Lightsail en cliquant sur Connecter ou en utilisant une commande de terminal :
ssh -i /path/to/your/ssh-key.pem bitnami@<your_instance_ip>
Copier après la connexion
Copier après la connexion

Deploy a Django App from GitHub on AWS Lightsail Using the Bitnami Django Stack


3. Clonez votre projet Django depuis GitHub

Maintenant que vous êtes connecté à votre instance Lightsail, vous pouvez cloner votre projet Django depuis GitHub.

Installer Git :

Tout d'abord, assurez-vous que Git est installé sur votre instance Lightsail :

sudo apt update
sudo apt install git
Copier après la connexion
Copier après la connexion

Clonez votre référentiel GitHub :

Maintenant, accédez au répertoire dans lequel vous souhaitez stocker votre projet (par exemple, /home/bitnami/) et clonez votre référentiel :

cd /home/bitnami
git clone https://github.com/yourusername/your-django-app.git
Copier après la connexion

Remplacez https://github.com/yourusername/your-django-app.git par l'URL réelle de votre référentiel GitHub.


4. Configurer les paramètres de Django

Une fois que vous avez cloné votre projet Django, vous devez configurer le fichier settings.py pour vous assurer qu'il fonctionne dans l'environnement de production.

Accédez à l'application Django :

  • Accédez au répertoire du projet. Bitnami installe Django dans /opt/bitnami/apps/django/django-project/ par défaut, mais votre application sera dans le dossier que vous avez cloné depuis GitHub.
cd /home/bitnami/your-django-app
Copier après la connexion

Modifiez le fichier settings.py :

Utilisez un éditeur de texte comme nano ou vi pour modifier vos paramètres.py :

sudo nano your-django-app/yourproject/settings.py
Copier après la connexion

Modifiez les paramètres suivants :

  • ALLOWED_HOSTS : Ajoutez votre adresse IP statique ou votre domaine Lightsail (si vous en avez un) à la liste ALLOWED_HOSTS :
ALLOWED_HOSTS = ['<your_instance_ip>', 'yourdomain.com']
Copier après la connexion
  • Configuration de la base de données : La pile Bitnami utilise PostgreSQL par défaut, utilisez donc la configuration de base de données par défaut si vous utilisez PostgreSQL :
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'bitnami_django',
        'USER': 'bn_django',
        'PASSWORD': 'yourpassword',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}
Copier après la connexion
  • Configuration des fichiers statiques : Assurez-vous que les paramètres des fichiers statiques suivants sont corrects :
STATIC_URL = '/static/'
STATIC_ROOT = '/home/bitnami/your-django-app/static'
Copier après la connexion

5. Exécuter des migrations et collecter des fichiers statiques

Après avoir configuré vos paramètres, exécutez des migrations et collectez des fichiers statiques.

Exécuter les migrations Django :

Appliquer toutes les migrations de bases de données :

sudo python3 manage.py migrate
Copier après la connexion

Collecter les fichiers statiques :

Exécutez la commande suivante pour collecter tous les fichiers statiques dans un emplacement central :

ssh -i /path/to/your/ssh-key.pem bitnami@<your_instance_ip>
Copier après la connexion
Copier après la connexion

6. Accédez à l'application dans le navigateur

Une fois la configuration ci-dessus terminée, votre application Django devrait être accessible via l'adresse IP statique de votre instance Lightsail.

  • Ouvrez un navigateur et saisissez l'adresse IP statique de votre instance Lightsail :
sudo apt update
sudo apt install git
Copier après la connexion
Copier après la connexion

Vous devriez voir la page d'accueil de Django ou votre application si vous avez déjà du code déployé.


Essayez-le avec l'application My Simple To-Do List

Clonez mon Application Django Simple To-Do List et suivez ces étapes pour la déployer sur AWS Lightsail.

Deploy a Django App from GitHub on AWS Lightsail Using the Bitnami Django Stack


Conclusion

Vous avez déployé avec succès votre application Django depuis GitHub sur AWS Lightsail à l'aide de la pile Bitnami Django. Avec cette configuration, vous avez :

  • Un environnement Django préconfiguré et prêt pour la production.
  • Une base de données PostgreSQL.

AWS Lightsail avec Bitnami fournit une solution simple et économique pour héberger des applications Django. Que vous déployiez un petit projet personnel ou une application de production, cette solution garantit le bon fonctionnement de votre application Django.


Références

  • Documentation officielle AWS Lightsail
  • Documentation de la pile Bitnami Django
  • Documentation officielle de Django

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Python vs C: applications et cas d'utilisation comparés Python vs C: applications et cas d'utilisation comparés Apr 12, 2025 am 12:01 AM

Python convient à la science des données, au développement Web et aux tâches d'automatisation, tandis que C convient à la programmation système, au développement de jeux et aux systèmes intégrés. Python est connu pour sa simplicité et son écosystème puissant, tandis que C est connu pour ses capacités de contrôle élevées et sous-jacentes.

Combien de python pouvez-vous apprendre en 2 heures? Combien de python pouvez-vous apprendre en 2 heures? Apr 09, 2025 pm 04:33 PM

Vous pouvez apprendre les bases de Python dans les deux heures. 1. Apprenez les variables et les types de données, 2. Structures de contrôle maître telles que si les instructions et les boucles, 3. Comprenez la définition et l'utilisation des fonctions. Ceux-ci vous aideront à commencer à écrire des programmes Python simples.

Python: jeux, GUIS, et plus Python: jeux, GUIS, et plus Apr 13, 2025 am 12:14 AM

Python excelle dans les jeux et le développement de l'interface graphique. 1) Le développement de jeux utilise Pygame, fournissant des fonctions de dessin, audio et d'autres fonctions, qui conviennent à la création de jeux 2D. 2) Le développement de l'interface graphique peut choisir Tkinter ou Pyqt. Tkinter est simple et facile à utiliser, PYQT a des fonctions riches et convient au développement professionnel.

Le plan Python de 2 heures: une approche réaliste Le plan Python de 2 heures: une approche réaliste Apr 11, 2025 am 12:04 AM

Vous pouvez apprendre les concepts de programmation de base et les compétences de Python dans les 2 heures. 1. Apprenez les variables et les types de données, 2. Flux de contrôle maître (instructions et boucles conditionnelles), 3. Comprenez la définition et l'utilisation des fonctions, 4. Démarrez rapidement avec la programmation Python via des exemples simples et des extraits de code.

Python: Explorer ses applications principales Python: Explorer ses applications principales Apr 10, 2025 am 09:41 AM

Python est largement utilisé dans les domaines du développement Web, de la science des données, de l'apprentissage automatique, de l'automatisation et des scripts. 1) Dans le développement Web, les cadres Django et Flask simplifient le processus de développement. 2) Dans les domaines de la science des données et de l'apprentissage automatique, les bibliothèques Numpy, Pandas, Scikit-Learn et Tensorflow fournissent un fort soutien. 3) En termes d'automatisation et de script, Python convient aux tâches telles que les tests automatisés et la gestion du système.

Python vs C: courbes d'apprentissage et facilité d'utilisation Python vs C: courbes d'apprentissage et facilité d'utilisation Apr 19, 2025 am 12:20 AM

Python est plus facile à apprendre et à utiliser, tandis que C est plus puissant mais complexe. 1. La syntaxe Python est concise et adaptée aux débutants. Le typage dynamique et la gestion automatique de la mémoire le rendent facile à utiliser, mais peuvent entraîner des erreurs d'exécution. 2.C fournit des fonctionnalités de contrôle de bas niveau et avancées, adaptées aux applications haute performance, mais a un seuil d'apprentissage élevé et nécessite une gestion manuelle de la mémoire et de la sécurité.

Python et temps: tirer le meilleur parti de votre temps d'étude Python et temps: tirer le meilleur parti de votre temps d'étude Apr 14, 2025 am 12:02 AM

Pour maximiser l'efficacité de l'apprentissage de Python dans un temps limité, vous pouvez utiliser les modules DateTime, Time et Schedule de Python. 1. Le module DateTime est utilisé pour enregistrer et planifier le temps d'apprentissage. 2. Le module de temps aide à définir l'étude et le temps de repos. 3. Le module de planification organise automatiquement des tâches d'apprentissage hebdomadaires.

Python: automatisation, script et gestion des tâches Python: automatisation, script et gestion des tâches Apr 16, 2025 am 12:14 AM

Python excelle dans l'automatisation, les scripts et la gestion des tâches. 1) Automatisation: La sauvegarde du fichier est réalisée via des bibliothèques standard telles que le système d'exploitation et la fermeture. 2) Écriture de script: utilisez la bibliothèque PSUTIL pour surveiller les ressources système. 3) Gestion des tâches: utilisez la bibliothèque de planification pour planifier les tâches. La facilité d'utilisation de Python et la prise en charge de la bibliothèque riche en font l'outil préféré dans ces domaines.

See all articles