Comment installer Django et configurer un environnement de développement sur Ubuntu 16.04

introduction

Django est un framework Web gratuit et à source ouverte écrit en Python qui adhère au modèle architectural du logiciel * model template view (MTV) *. Le modèle MTV est l’opinion de Django sur le modèle model–view–controller (MVC). Selon Django Software Foundation, le model est la source unique et définitive de vos données. Le view décrit les données qui sont présentées à l’utilisateur via un rappel Python https://www.digitalocean.com/community/tutorials/how-to. -define-functions-in-python-3 [fonction] vers une URL spécifique, et le template indique comment Django génère le code HTML de manière dynamique.

Les principes fondamentaux de Django sont l’évolutivité, la réutilisation et le développement rapide. Il est également connu pour sa cohérence au niveau de la structure et son couplage souple, permettant aux composants individuels d’être indépendants les uns des autres. Ne vous répétez pas (DRY programmation) fait partie intégrante des principes de Django.

Dans ce tutoriel, nous allons configurer un environnement de développement Django. Nous allons installer Python 3, pip 3, Django et + virtualenv + afin de vous fournir les outils nécessaires au développement d’applications Web avec Django.

Conditions préalables

Un compte utilisateur non root avec les privilèges + sudo + configurés sur un serveur Debian ou Ubuntu Linux. Vous pouvez remplir ces conditions préalables en suivant et en complétant la initial initial server server for Debian 8, ou les étapes 1 à 4 du processus le tutoriel https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-16-04 pour la configuration initiale du serveur pour Ubuntu 16.04].

Étape 1 - Installez Python et pip

Pour installer Python, nous devons d’abord mettre à jour le référentiel APT local. Dans la fenêtre de votre terminal, nous allons saisir la commande suivante. Notez que l’indicateur + -y + répond «oui» aux invites lors du processus de mise à niveau. Supprimez l’indicateur si vous souhaitez que la mise à niveau s’arrête à chaque invite.

sudo apt-get update && sudo apt-get -y upgrade

Lorsque vous êtes invité à configurer + grub-pc, vous pouvez appuyer sur` + ENTER` pour accepter la valeur par défaut ou configurer à votre guise.

Django Software Foundation recommande d’utiliser Python 3; ainsi, une fois que tout est mis à jour, nous pouvons installer Python 3 à l’aide de la commande suivante:

sudo apt-get install python3

Pour vérifier que l’installation de Python 3 a réussi, exécutez une vérification de version à l’aide de la commande * python3 *:

python3 -V

La sortie résultante ressemblera à ceci:

Outputpython

Maintenant que Python 3 est installé, nous aurons également besoin de * pip * pour installer les paquets à partir de PyPi, le référentiel de paquets de Python.

sudo apt-get install -y python3-pip

Pour vérifier que pip a été installé avec succès, exécutez la commande suivante:

pip3 -V

Vous devriez voir une sortie semblable à ceci:

Outputpip  from /usr/lib/python3/dist-packages (python )

Maintenant que pip est installé, nous avons la possibilité d’installer rapidement les autres packages nécessaires à un environnement Python.

Étape 2 - Installez virtualenv

Pour installer virtualenv, nous allons utiliser la commande * pip3 *, comme indiqué ci-dessous:

pip3 install virtualenv

Une fois installé, lancez une vérification de version pour vérifier que l’installation s’est bien déroulée:

virtualenv --version

Nous devrions voir le résultat suivant, ou quelque chose de similaire:

Output

Vous avez installé * virtualenv * avec succès.

À ce stade, nous pouvons isoler notre application Web Django et ses dépendances logicielles associées des autres packages ou projets Python sur notre système.

Étape 3 - Installez Django

Il y a trois façons d’installer Django. Nous allons utiliser la méthode d’installation pip pour ce didacticiel, mais abordons toutes les options disponibles pour votre référence.

  • * Option 1: Installer Django dans un + virtualenv +. *
    Ceci est idéal lorsque votre version de Django doit être isolée de l’environnement global de votre serveur.

  • * Option 2: Installer Django à partir de la source. *
    Si vous voulez la dernière version du logiciel ou si vous voulez quelque chose de plus récent que ce que propose votre référentiel Ubuntu APT, vous pouvez installer directement à partir du source. Notez qu’opter pour cette méthode d’installation requiert une attention et une maintenance constantes si vous souhaitez que votre version du logiciel soit à jour.

  • * Option 3: Installer Django Globally avec pip. *
    L’option que nous allons utiliser est le pip 3, car nous installerons Django dans le monde entier.

Nous installerons Django en utilisant pip dans un environnement virtuel. Pour plus de conseils et d’informations sur la configuration et l’utilisation des environnements de programmation, consultez ce tutoriel à l’adresse https://www.digitalocean.com/community/tutorials/how-to-install-python-3-and-set-up-a -programming-environment-on-an-ubuntu-16-04-server [configuration d’un environnement virtuel].

Dans le répertoire personnel du serveur, nous devons créer le répertoire qui contiendra notre application Django. Exécutez la commande suivante pour créer un répertoire appelé ou un autre nom de votre choix. Ensuite, accédez au répertoire.

mkdir
cd

Dans le répertoire, créez votre environnement virtuel. Appelons ça.

virtualenv

Activez maintenant l’environnement virtuel avec la commande suivante:

. env/bin/activate

Vous saurez qu’il est activé une fois le préfixe modifié, ce qui ressemblera au suivant en fonction du répertoire dans lequel vous vous trouvez:

Dans l’environnement, installez le package Django à l’aide de pip. L’installation de Django nous permet de créer et d’exécuter des applications Django. Pour en savoir plus sur Django, lisez notre série de tutoriels à l’adresse Django Development.

pip install django

Une fois installé, vérifiez votre installation de Django en exécutant une vérification de version:

django-admin --version

Ceci, ou quelque chose de similaire, sera la sortie résultante:

Output

Avec Django installé sur votre serveur, nous pouvons créer un projet de test pour nous assurer que tout fonctionne correctement.

Étape 4 - Création d’un projet de test Django

Pour tester l’installation de Django, nous allons créer une application Web squelette.

Définition de règles de pare-feu

Premièrement, le cas échéant, nous devrons ouvrir le port que nous utiliserons dans le pare-feu de notre serveur. Si vous utilisez UFW (comme détaillé dans https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-16-04#step-seven-%E2%80%94-set -up-a-basic-firewall [Guide de configuration initiale du serveur]), vous pouvez ouvrir le port à l’aide de la commande suivante:

sudo ufw allow 8000

Si vous utilisez DigitalOcean Firewalls, vous pouvez sélectionner + HTTP + à partir des règles entrantes. Pour en savoir plus sur les pare-feu DigitalOcean et sur la création de règles à leur sujet, consultez la page https://www.digitalocean.com/community/tutorials/an-inintroduction-to-digitalocean-cloud-firewalls#creating-new-inbound-rules-from -presets [section des règles entrantes du didacticiel d’introduction].

Démarrer le projet

Nous pouvons maintenant générer une application en utilisant + django-admin +, un utilitaire de ligne de commande pour les tâches d’administration en Python. Ensuite, nous pouvons utiliser la commande + startproject + pour créer la structure de répertoire de projet pour notre site Web de test.

Dans le répertoire + django-apps +, exécutez la commande suivante:

django-admin startproject testsite

Nous pouvons maintenant voir quels fichiers de projet viennent d’être créés. Accédez au répertoire + testsite + puis répertoriez le contenu de ce répertoire pour voir quels fichiers ont été créés:

cd testsite
ls
Outputmanage.py  testsite

Vous remarquerez que la sortie montre que ce répertoire contient un fichier nommé + manage.py + et un dossier nommé + testsite +. Le fichier + manage.py + est similaire à + ​​django-admin + et place le paquet du projet sur + sys.path +. Cela définit également la variable d’environnement + DJANGO_SETTINGS_MODULE + pour qu’elle pointe vers le fichier + settings.py + de votre projet.

Vous pouvez afficher le script + manage.py + dans votre terminal en exécutant la commande + less + comme suit:

less manage.py

Lorsque vous avez fini de lire le script, appuyez sur + q + pour quitter l’affichage du fichier.

Naviguez maintenant vers le répertoire + testsite + pour afficher les autres fichiers créés:

cd testsite/

Exécutez ensuite la commande suivante pour répertorier le contenu du répertoire:

ls

Vous verrez quatre fichiers:

Output__init__.py  settings.py  urls.py  wsgi.py

Examinons chacun de ces fichiers:

  • + init . py + sert de point d’entrée pour votre projet Python.

  • + settings.py + décrit la configuration de votre installation Django et indique à Django quels sont les paramètres disponibles.

  • + urls.py + contient une liste + url patterns, qui route et mappe les URL vers leurs` + vues`.

  • + wsgi.py + contient la configuration de l’interface Web Server Gateway. L’interface de la passerelle du serveur Web (WSGI) est la norme de la plate-forme Python pour le déploiement de serveurs et d’applications Web.

Démarrer et afficher votre site Web

Nous pouvons maintenant démarrer le serveur et afficher le site Web sur un hôte et un port désignés en exécutant la commande + runserver + +.

Nous devrons ajouter l’adresse IP de votre serveur à la liste + ALLOWED_HOSTS + dans le fichier + settings.py + situé dans + ~ / test_django_app / testsite / testsite / +.

Comme indiqué dans les Django docs, la variable + ALLOWED_HOSTS + contient «une liste de chaînes représentant les noms d’hôte / de domaine que ce site Django peut servir. Il s’agit d’une mesure de sécurité visant à empêcher les attaques par en-tête HTTP Host, qui sont possibles même avec de nombreuses configurations de serveur Web apparemment sûres. ”

Vous pouvez utiliser votre éditeur de texte favori pour ajouter votre adresse IP. Par exemple, si vous utilisez + nano +, lancez simplement la commande suivante:

nano ~/django-apps/testsite/testsite/settings.py

Une fois que vous avez exécuté la commande, vous souhaiterez accéder à la section Hôtes autorisés du document et ajouter l’adresse IP de votre serveur entre crochets, entre guillemets simples ou doubles.

settings.py

"""
Django settings for testsite project.

Generated by 'django-admin startproject' using Django 2.0.
...
"""
...
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

# Edit the line below with your server IP address
ALLOWED_HOSTS = ['']
...

Vous pouvez enregistrer la modification et quitter nano en maintenant les touches + CTRL + + + + + enfoncées, puis en appuyant sur la touche + y + `.

Ceci fait, assurez-vous de revenir au répertoire où se trouve + manage.py +:

cd ~/django-apps/testsite/

Maintenant, exécutez la commande suivante en remplaçant le texte par l’adresse IP de votre serveur:

python manage.py runserver :8000

Enfin, vous pouvez accéder au lien ci-dessous pour voir à quoi ressemble votre site Web squelette. Remplacez à nouveau le texte mis en surbrillance par l’adresse IP réelle de votre serveur:

http://:8000/

Une fois la page chargée, vous verrez ce qui suit:

image: https: //assets.digitalocean.com/articles/eng_python/django/django-2-testsite.png [Page par défaut de Django]

Cela confirme que Django a été correctement installé et que notre projet de test fonctionne correctement.

Lorsque vous avez terminé de tester votre application, vous pouvez appuyer sur les touches + CTRL + + + + + + pour arrêter la commande + runserver + `. Cela vous ramènera à votre environnement de programmation.

Lorsque vous êtes prêt à quitter votre environnement Python, vous pouvez exécuter la commande + deactivate +:

deactivate

La désactivation de votre environnement de programmation vous ramènera à l’invite de commande du terminal.

Conclusion

Dans ce tutoriel, vous avez mis à niveau avec succès la dernière version de Python 3 disponible via le référentiel Ubuntu APT. Vous avez également installé pip3, + virtualenv et` + django`.

Vous disposez maintenant des outils nécessaires pour commencer à créer des applications Web Django.