Python環境構築(pyenv + pyenv-virtualenv)

普段私はpyenv + pyenv-virtualenvの組み合わせでpythonの環境管理をしています。今回の記事ではその設定方法について記載していきます。
記事中のコードを手元で実行すれば簡単にpyenv・pyenv-virtualenvの環境が設定できます。

動作確認はLinux, MaxOSでしてます。

目次

Install pyenv and pyenv-virtualenv

下記のスクリプトをコピペして、install_pyenv.shというファイルを作成する。

install_pyenv.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/bash

# Install pyenv
git clone https://github.com/yyuu/pyenv.git $HOME/.pyenv
echo '' >> $HOME/.bash_profile
echo '# Setting for pyenv and pyenv-virtualenv' >> $HOME/.bash_profile
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> $HOME/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> $HOME/.bash_profile
echo 'if command -v pyenv 1>/dev/null 2>&1; then' >> $HOME/.bash_profile
echo ' eval "$(pyenv init -)"' >> $HOME/.bash_profile
echo 'fi' >> $HOME/.bash_profile

source $HOME/.bash_profile

# Install pyenv-virtualenv
git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
echo 'eval "$(pyenv virtualenv-init -)"' >> $HOME/.bash_profile
source $HOME/.bash_profile

echo DONE!

ターミナルを起動してダウンロードした場所に移動した後に、下記のコマンドを実行して下さい。

1
bash install_pyenv.sh

インストールが終わったら一度ターミナルを立ち上げ直して下さい。
これでpyenv + pyenv-virtualenvのインストールは完了です。

追記(2021/05/17)

上記のインストール手順を終えた際に、以下の警告

WARNING: `pyenv init -` no longer sets PATH.
Run `pyenv init` to see the necessary changes to make to your configuration.

が出た人は $HOME/.bash_profileを開いてeval "$(pyenv init --path)" という行を以下の通りに追記してください。

1
2
3
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)" # <-追記行
if command -v pyenv 1>/dev/null 2>&1; then

これで再ログインをすれば問題が解決してると思います。

解決しなかった場合はご連絡ください。

Set virtual environment

Install miniconda

python環境は全てpyenv-virtualenv上で管理しています。
そうすることで環境の使い捨てが簡単になるので便利です。

1
2
pyenv install miniconda3-4.2.12
pyenv shell miniconda3-4.2.12

Create home environment

インストールしたminiconda上でcondaコマンドを使用すると、condaのバージョンが上がってpyenvがおかしくなります。
それを防ぐために仮想home環境を作成し、そこをデフォルトの作業環境とします。

1
2
conda create -n home python=3.6
pyenv global miniconda3-4.2.12/envs/home

Create test environment

あとはテーマ毎等で仮想環境を作って個別に管理します。
そうすることで各環境を最小構成にすることができて干渉する心配もありません。
ここでは試しにcalc環境を作成します。

1
2
3
conda create -n calc python=3.6
pyenv shell miniconda3-4.2.12/envs/calc
conda install -c rdkit rdkit

簡単ではありますが、以上でpythonの環境構築についての解説を終わります。
何かご質問等ありましたらコメントにお願いします。

Python環境構築(pyenv + pyenv-virtualenv)

https://sishida21.github.io/2019/12/09/pyenv/

Author

Shoichi Ishida

Posted on

2019-12-09

Updated on

2021-05-19

Licensed under