pyenvとvirtualenvでpython環境を構築

pyenvとvirtualenvでpython環境を構築

pyenvで複数のバージョンのpythonの切り替えが容易になった。
pyenvにvirtualenvプラグインをインストールすると、
pythonのバージョンごとの管理と、さらに同一バージョンでも、
pip環境を分けて管理できるようだ。
これで、依存性の切り分けが容易になる気がする。
pyenvにpyenv-virtualenvを追加する。

pyenvとvirtualenvのインストール

githubよりスクリプトをダウンロード(git clone)。

1
2
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
git clone https://github.com/pyenv/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv

.bash_profileを編集

1
2
3
4
5
vim ~/.bash_profile
export PYENV_ROOT=$HOME/.pyenv
export PATH_$PYENV_ROOT/bin:$PATH
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

編集した.bash_profileを読み込む。

1
. ~/.bash_profile

特定のバージョンのpythonをインストール。

ソースをビルドするので、結構時間がかかる。

1
pyenv install 3.6.6

バージョン3.6.6をインストール。

新しいバージョンのpythonをインストールしたときは、下記のコマンドを実行する。

1
pyenv rehash

インストールしたpythonのテスト環境を作成する。

1
pyenv virtualenv 3.6.6 test-3.6.6

バージョン3.6.6のテスト環境 test-3.6.6 を作成。

テスト環境ディレクトリを作成し、そのディレクトリにtest-3.6.6を割り当てる。

1
2
3
mkdir ~/test-3.6.6
cd ~/test-3.6.6
pyenv local test-3.6.6

ホームディレクトリのtest-3.6.6に移動すると、
test-3.6.6のpython環境が動作する。

pythonのバージョン、インストールされているパッケージを確認する。

1
2
python -V
pip freeze

pythonのバージョンは3.6.6、pipではまだ何もインストールされていない環境が作成される。
この環境でpipインストールすると、test-3.6.6にインストールされ、
3.6.6やその他の環境へはpipインストールが影響しない。

インストールしたtest-3.6.6のアンインストール

1
pyenv uninstall test-3.6.6

テスト環境のみ削除される。3.6.6環境はそのまま残るため、
新たにtest-3.6.6を瞬時に作成される。

まとめ

モジュールの依存関係が、ある程度見えてきそうだ。

同じタグの記事
同じカテゴリの記事

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA