Gérer des environnements virtuels Python avec virtualenv et venv
virtualenv ou venv ?
Ce sont des outils qui permettent de créer des environnements de développement Python isolés.
venv est l'outil pour les versions de Python 3.3 et supérieures.
Pour les verisons précédentes nous allons nous interesser à virtualenv.
Nous allons voir en details pourquoi et comment utiliser des environnements virtuels.
Pourquoi utiliser des environnements virtuels ?
Quand on travaille sur plusieurs projets Python en même temps on peut se retrouver avec plusieurs problèmes :
- utiliser des bibliothèques différentes par projets ou des versions differentes
- avoir des incompatibilités de versions entre plusieurs bibliothèques
- utiliser des versions de Django différentes
- utiliser des versions de Python différentes
- etc
On peut donc facilement avoir des problèmes d'incompatibilités.
La solution est de séparer virtuellement chaque projet. Ainsi, chaque installation au sein de l'environnement créé ne sera accessible que dans celui.
Pour cela il faut donc créer des environnements virtuels et les utiliser, c'est la prochaine etape !
Créer des environnements virtuels
Tout d'abord, on installe virtualenv avec pip :
pip install virtualenv
virtualenv pathproject/env_projectname
À partir de Python 3.3 l'outil venv est déjà intégré. On peut creer un environnement avec la commande :
pyvenv pathproject/env_projectname
Activer l'environnement virtuel
Pour utiliser l'environnement virtuel il faut l'activer. Voici comment :
source pathproject/env_projectname/bin/activate
Pour windows la commande est :
C:\\pathproject\env_projectname\Scripts\activate.bat
Après cette l'activation, vous devriez voir le nom de l'environnement s'afficher entre parenthèses :
(nlabdevenv) Nadia:nlab-dev-blog nadia$
Tout ce qui sera installé a partir de pip sera maintenant inclu seulement dans cet environnement.
À noter que pour désactiver l'environnement il suffit de lancer la commande deactivate.
Différentes versions de Python
Pour des versions de Python différentes par environnement il suffit d'indiquer la version de Python en paramètre lors de sa création.
virtualenv pathproject/env_projectname -p /usr/bin/python3 p3
Comments
There are currently no comments