Python >> Tutoriel Python >  >> Python

Configuration de Python 3, Bottle et Gunicorn pour le développement sur Ubuntu 16.04 LTS

Le système d'exploitation Linux Ubuntu 16.04 Long Term Support (LTS) est sorti en avril 2016. Cette dernière version d'Ubuntu s'appelle "Xenial Xerus" et c'est la première version d'Ubuntu à inclure Python 3, au lieu de Python 2.x, comme installation Python par défaut. .

Nous pouvons rapidement démarrer un nouveau projet d'application Web Bottle et l'exécuter avec Green Unicorn (Gunicorn) sur Ubuntu 16.04.

Outils dont nous avons besoin

Notre configuration nécessite la version Ubuntu 16.04 ainsi que quelques autres bibliothèques de codes. N'installez pas ces outils pour l'instant, car nous y reviendrons au fur et à mesure de la procédure pas à pas. Nos exigences et leurs versions actuelles en avril 2017 sont :

  • Ubuntu 16.04.2 LTS (Xenial Xerus)
  • Python version 3.5.1 (par défaut dans Ubuntu 16.04.2)
  • Bottle web framework version0.13
  • Licorne verte (Gunicorn) version19.7.1

Si vous développez sur Mac OS X ou Windows, assurez-vous d'utiliser un logiciel de virtualisation tel que Parallels ou VirtualBox avec le fichier .iso d'Ubuntu. Soit la version amd64 ou ori386 de 16.04 convient. J'utilise la version amd64 pour mon propre développement local.

Un écran de bureau comme celui-ci apparaît lorsque vous démarrez Ubuntu.

Ouvrez une fenêtre de terminal pour installer les packages système.

Packages système

Nous pouvons voir la version du système python3 fournie par Ubuntu et où son exécutable est stocké à l'aide de ces commandes.

python3 --version
which python3

Notre installation Ubuntu nécessite quelques packages système. Nous serons invités à saisir le mot de passe du superutilisateur car un accès restreint au système est nécessaire pour installer les packages via apt.

sudo apt-get install python3-pip python3-dev

Entrez y pour laisser le processus d'installation du package système faire son travail.

Les packages dont nous avons besoin sont maintenant installés. Nous pouvons continuer à installer nos dépendances spécifiques à Python.

Virtualenv

Dans la section précédente, virtualenv et pip ont été installés pour gérer les dépendances de nos applications. Nous pouvons maintenant les utiliser pour télécharger et installer Bottle et Gunicorn.

Créez un répertoire pour le virtualenvs. Créez ensuite un nouveau virtualenv.

# make sure pip and setuptools are the latest version
pip3 install --upgrade pip setuptools
# the tilde "~" specifies the user's home directory, like /home/matt
cd ~
mkdir venvs
# specify the system python3 installation
virtualenv --python=/usr/bin/python3 venvs/bottleproj
python3 -m venv venvs/bottleproj

Activez l'environnement virtuel.

source ~/venvs/bottleproj/bin/activate

Notre invite changera après avoir correctement activé le virtualenv.

Notre virtualenv est maintenant activé avec Python 3. Nous pouvons installer toutes les dépendances que nous voulons, dans notre cas Bottle et Gunicorn.

Bouteille et Gunicorne

Nous pouvons maintenant installer Bottle et Green Unicorn via le pip commande.

pip install bottle gunicorn

Aucune erreur comme celle que nous voyons dans la capture d'écran suivante n'est un bon signe.

Utilisez le mkdir commande pour créer un nouveau répertoire pour garder notre Bottleproject puis utilisez le cd (changer de répertoire) pour accéder au nouveau dossier.

mkdir ~/bottleproj
cd ~/bottleproj

Créez un nouveau fichier nommé app.py dans notre bottleproj répertoire afin que nous puissions tester pour nous assurer que Bottle fonctionne correctement. Je préfère utiliser Vim mais Emacs et d'autres environnements de développement fonctionnent également très bien.

Dans le nouveau app.py fichier écrivez le code suivant.

import bottle
from bottle import route, run, Response

# a basic URL route to test whether Bottle is responding properly
@route('/')
def index():
    return Response("It works!")

# these two lines are only used for python app.py
if __name__ == '__main__':
    run(host='0.0.0.0', port=8000, debug=True, reloader=True)

# this is the hook for Gunicorn to run Bottle
app = bottle.default_app()

Nous pourrions exécuter notre application avec le serveur de développement Bottle en utilisant le python app.py commande. Exécutons plutôt notre application Bottle avec Gunicorn.

gunicorn -w 2 app:app

Super, nous pouvons afficher notre application Shell Bottle dans le navigateur Web au localhost:8000 ou 127.0.0.1:8000 adresse.

Il est temps de développer une application Web à part entière avec Bottle !

Prêt pour le développement

Vous disposez maintenant d'une configuration simple pour développer des applications Web Bottle en utilisant Gunicorn en tant que serveur WSGI sur Ubuntu 16.04. Si vous avez besoin d'un didacticiel complet étape par étape pour déployer votre application Web Python dans un environnement de production, consultez le livre Full Stack Python Guide to Deployments.

Pour décider quoi faire ensuite avec votre projet Python, consultez la page de table des matières Full Stack Python.

Vous voyez quelque chose qui ne va pas dans ce message ? La source de cette page sur GitHuband soumet une pull request.