Créez un environnement de gestion d'environnement virtuel (?) À l'aide de pyenv et pipenv. Utilisez pyenv pour gérer la version de Python elle-même et utilisez pipenv pour créer un environnement virtuel pour chaque projet et gérer les packages.
install.sh
#!/bin/bash
# Install dependencies
echo "Mot de passe de l'utilisateur" | sudo apt update && sudo apt install -y --no-install-recommends \
build-essential \
libffi-dev \
libssl-dev \
zlib1g-dev \
libbz2-dev \
libreadline-dev \
libsqlite3-dev \
git
# Download pyenv
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
# Update .bash_profile
touch ~/.bash_profile
echo -e "# pyenv paths" >> ~/.bash_profile
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
source ~/.bash_profile
pyenv -v
# Install Python and set default
pyenv install 3.7.4
pyenv global 3.7.4
# Install pipenv
pip install pipenv
En exécutant ce script shell comme suit, pyenv / python / pipenv sera installé.
./install.sh
Si vous vous fâchez de ne pas avoir la permission, utilisez chmod + rx install.sh
pour donner la permission de lecture / exécution.
Bien sûr, il n'y a pas de problème même si vous frappez le terminal ligne par ligne et l'exécutez.
Créez un projet appelé hoge et lancez un environnement virtuel pour Python 3.6.
Tout d'abord, installez la version 3.6 de Python avec pyenv.
$ pyenv install 3.6.9
Ensuite, créez un environnement virtuel avec pipenv.
$ mkdir hoge
$ cd hoge
$ pipenv install --python 3.6.9
Creating a virtualenv for this project…
Pipfile: /home/**/hoge/Pipfile
Using /home/**/.pyenv/versions/3.6.9/bin/python3 (3.6.9) to create virtualenv…
Python 3.6.9 installé avec pyenv est utilisé.
Succès s'il y a Pipfile
et Pipfile.lock
soushoge /
.
$ pipenv shell
(hoge) user:~/hoge$
--Installez la bibliothèque dans l'environnement virtuel
$ pipenv install numpy
Utilisez pipenv install
au lieu de pip install
. Si vous accidentellement pip install
, cela ne polluera pas l'extérieur de l'environnement virtuel, mais soyez prudent car la bibliothèque n'est pas gérée par Pipfile / Pipfile.lock
. ..
$ exit
--Supprimer l'environnement virtuel
$ pipenv --rm
--Facile à installer et à configurer
--Lorsque vous installez la bibliothèque avec pipenv, Pipfile / Pipfile.lock
est également mis à jour automatiquement, donc contrairement à requirements.txt, vous n'oublierez pas de le mettre à jour.
requirements.txt
avec pipenv install -r requirements.txt
pip install
.
--Il faut du temps pour créer Pipfile.lock
Par défaut, les environnements virtuels créés avec pipenv sont placés sous ~ / .local / share / virtualenvs /
. Pipenv --rm
supprime cet environnement virtuel, mais oubliez-le. Si vous supprimez uniquement le répertoire du projet, l'environnement virtuel lui-même restera.
Pour créer un environnement virtuel directement sous le projet, il est nécessaire de définir la variable d'environnement $ PIPENV_VENV_IN_PROJECT
.
echo -e "# pipenv property" >> ~/.bash_profile
echo 'export PIPENV_VENV_IN_PROJECT=1' >> ~/.bash_profile
source ~/.bash_profile
En faisant cela, l'environnement virtuel .venv /
sera placé directement sous le projet, et si vous supprimez le répertoire du projet, l'environnement virtuel sera également supprimé.
Recommended Posts