Les environnements virtuels Python sont utilisés pour créer des environnements Python isolés afin d'éviter les conflits de dépendances et de versions, et aussi pour prendre en charge indirectement les problèmes de permission. Mais quel est le moyen le plus simple de les configurer et de les utiliser dans Ubuntu ?
Réponses
Trop de publicités?Avec virtualenvwrapper
(enveloppes conviviales pour la fonctionnalité de virtualenv
)
Installer virtualenv
Installer virtualenv
avec
sudo apt install virtualenv
Installer virtualenvwrapper
La raison pour laquelle nous installons également virtualenvwrapper c'est parce qu'il offre des commandes agréables et simples pour gérer vos environnements virtuels. Il existe deux façons d'installer virtualenvwrapper
:
Comme paquet Ubuntu (à partir d'Ubuntu 16.04)
Exécuter
sudo apt install virtualenvwrapper
puis exécutez
echo "source /usr/share/virtualenvwrapper/virtualenvwrapper.sh" >> ~/.bashrc
Utilisation de pip
-
Installer et/ou mettre à jour pip
Installer pip pour Python 2 avec
sudo apt install python-pip
ou pour Python 3
sudo apt install python3-pip
(si vous utilisez Python 3, vous devrez peut-être utiliser
pip3
代わりにpip
dans la suite de ce guide).Facultatif (mais recommandé) : Activer l'autocomplétion de bash pour pip
Exécuter
pip completion --bash >> ~/.bashrc
et exécuter
source ~/.bashrc
à activer. -
Installer virtualenvwrapper
Parce que nous voulons éviter
sudo pip
nous installonsvirtualenvwrapper
localement (par défaut sous~/.local
) avec :pip install --user virtualenvwrapper
y
echo "export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3" >> ~/.bashrc
-
Source virtualenvwrapper dans
.bashrc
echo "source ~/.local/bin/virtualenvwrapper.sh" >> ~/.bashrc
Configurer virtualenv et virtualenvwrapper :
Tout d'abord, nous exportons le WORKON_HOME
qui contient le répertoire dans lequel nos environnements virtuels doivent être stockés. Faisons de cette variable ~/.virtualenvs
export WORKON_HOME=~/.virtualenvs
Maintenant, créez également ce répertoire
mkdir $WORKON_HOME
et mettre cette exportation dans notre ~/.bashrc
afin que cette variable soit automatiquement définie
echo "export WORKON_HOME=$WORKON_HOME" >> ~/.bashrc
Nous pouvons également ajouter des astuces supplémentaires comme le suivant, qui s'assure que si pip
crée un environnement virtuel supplémentaire, il est également placé dans notre WORKON_HOME
répertoire :
echo "export PIP_VIRTUALENV_BASE=$WORKON_HOME" >> ~/.bashrc
Sourcez ~/.bashrc pour charger les changements
source ~/.bashrc
Testez si cela fonctionne
Nous allons maintenant créer notre premier environnement virtuel. Le site -p
est facultatif, il est utilisé pour définir la version de Python à utiliser ; il peut également être python3
par exemple.
mkvirtualenv -p python2.7 test
Vous verrez que l'environnement sera configuré, et votre invite comprend maintenant le nom de votre environnement actif entre parenthèses. Aussi, si vous exécutez maintenant
python -c "import sys; print sys.path"
vous devriez voir beaucoup de /home/user/.virtualenv/...
parce qu'il n'utilise plus les paquets de sites de votre système.
Vous pouvez désactiver votre environnement en exécutant
deactivate
et si vous voulez retravailler dessus, tapez simplement
workon test
Enfin, si vous voulez supprimer votre environnement, tapez
rmvirtualenv test
Profitez-en !
Merci à l'auteur de ce blogpost .
Les environnements virtuels offrent un moyen de gérer et d'isoler les dépendances sur la base de chaque projet. En outre, ils permettent d'éviter toute sudo pip install
situation, qui constitue un risque pour la sécurité, comme je l'ai expliqué en https://askubuntu.com/a/802594/15003 . La documentation officielle de Python contient également encourage l'utilisation d'environnements virtuels .
La manière la plus simple de créer et d'utiliser des environnements virtuels pour Python 2 et Python 3 est d'installer virtualenv
使って apt
o apt-get
. Pour chaque projet Python, créez un virtualenv puis activez-le. Notez que le virtualenv est spécifique à une version particulière de Python. Après l'activation, utilisez pip
pour installer les paquets Python comme d'habitude, que vous utilisiez Python 2 ou 3 ; il n'est pas nécessaire d'utiliser la commande pip3
pour Python 3. sudo
est uniquement utilisé pour installer virtualenv
et n'est pas utilisé avec pip
et éviter ainsi le risque de sécurité susmentionné. Les commandes pour ce faire sont :
sudo apt update
sudo apt install virtualenv
cd ~/desired_directory # cd to desired_directory
virtualenv venv # create virtualenv named venv for default system Python, which is Python 2 for Ubuntu
source venv/bin/activate # activate virtualenv
pip install -U pip # upgrade pip in case it is outdated
pip install desired_package # install desired_package
Si vous souhaitez créer un virtualenv pour Python 3, remplacez virtualenv venv
avec :
virtualenv venv -p python3
Pour en savoir plus sur les différentes fonctionnalités de l'appareil, cliquez ici. virtualenv
en https://virtualenv.pypa.io/en/stable/ .
C'est facile, vous installez Python-virtualenv . Ensuite, vous pouvez créer un virtualenv avec la commande virtualenv
commandement. Voir leur documentation pour plus.
Avec le module vénitien disponible à partir de Python 3.3 (et Ubuntu 15.10)
Les environnements virtuels (venvs) sont si populaires que la fonctionnalité est désormais incluse dans Python lui-même (à partir de la version 3.3). Pour l'utiliser sur Ubuntu, vous devez installer python3-venv
(puisque le ensurepip
n'est pas disponible) :
sudo apt-get install python3-venv
Après cela, vous pouvez utiliser
pyvenv myvirtualenv
pour créer un environnement virtuel appelé myvirtualenv
. Vous pouvez alors utiliser
source myvirtualenv/bin/activate
pour activer l'environnement virtuel. Pour le désactiver, il suffit de taper
deactivate
EDITAR: Le site pyvenv
script a été déprécié au profit de python3 -m venv
. Cela évite toute confusion quant à l'interpréteur Python. pyvenv
est connecté et donc quel interpréteur Python sera utilisé par l'environnement virtuel. ( source )