[TOC]
1. pyenvの利点
- ユーザー間でデフォルトで指定しているpythonのバージョン(python2.6やpython3.6)が異なる.
- モジュール(Networkx)等のバージョンが異なる.
- pythonのバージョン1つにつき環境を複数用意したい.(例えばpython3.6.3の環境の1つ目ではNetworkxのバージョンは2だが、環境の2つ目ではバージョン3を持ち内場合など)
2. モジュール管理
2.1. pip
- Install another module version
pip install --no-cache-dir -I module(for example numpy)
--no-cache-dir
:Clear out its download cache and downloat from the scratch. use the specific version
3. インストール
3.1. CentOS
3.1.1. pyenvの環境構築
- pyenvのインストーラの取得
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
pyenveにパスを通す(~/.bash_profileに以下を追加)
export PYENV_ROOT="${HOME}/.pyenv"
export PATH="${PYENV_ROOT}/bin:$PATH"
eval "$(pyenv init -)"
pyenvのバージョンを確認
pyenv -v
- pyenvのバージョンをあげるplugin
- インストール
git clone git://github.com/yyuu/pyenv-update.git ~/.pyenv/plugins/pyenv-update
- pyenvをアップデート
pyenv update
- 参考資料
- インストール
- pyenvでインストール出来るpythonのバージョンを確認
pyenv install -l
- pyenvでpython のバージョンのインストール
pyenv install 3.6.3
- pyenvで使用するpythonのバージョンを指定
pyenv global 3.6.3
- pyenvで使用している(使用可能な)pythonのバージョンを確認
pyenv version(s)
3.1.2. pyenv-virtualenvの環境構築
- virtualenvのインストール
git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
- virtualenvにパスを通す.
eval "$(pyenv virtualenv-init -)"
- 使用可能なバージョンを確認
pyenv versions
- 使用可能なバージョン(3.6.3)から仮想環境(3.6.3_v1)を作成.
pyenv virtualenv 3.6.3 3.6.3_v1
- pip等でインストールしたモジュールを継承して仮想環境(3.6.3_v1cp)構築
pyenv virtualenv 3.6.3_v1 3.6.3_v1cp
※仮想環境3.6.3_v1
のモジュールを継承するとする. - pyenvで使用するpythonのバージョンを指定(virtualenv-name).
pyenv global virtualenv-name
- pyenvの仮想環境(virtual-name)を削除
pyenv uninstall virtual-name
- モジュールのリストをインストール
pip freeze > pyp_list.txt
- まとめてモジュールをインストール
pip install -r pyp_list.txt
3.1.3. 参考文献
CentOSにインストール,virtualenv基本コマンド,virtualenv環境設定