Mac(Homebrew)でPython(pyenv/virtualenv)開発環境を作る

  • 5
    Like
  • 0
    Comment

はじめに

Pythonの開発環境を作る上で、macにすでにインストールされているPythonを汚したくない人のために、この記事では以下の目的を達成する方法を記載しています。

  • ディレクトリ毎にPythonのversionと環境(インストールされているpip module)を切り替える
  • pip moduleをコード管理する

注意

  • この記事ではなるべく簡単にするために、一番最初のインストールにHomebrewを利用しています。Homebrewを予めインストールしておいてください。
  • たぶんもっとイカした方法があると思います。
  • 確認方法は書くのがめんどくさいので各自調べてください。

Homebrewでpyenv pyenv-virtualenv をインストール

brew install pyenv pyenv-virtualenv
echo 'export PYENV_ROOT="${HOME}/.pyenv"' >> ~/.bash_profile
echo 'export PATH="${PYENV_ROOT}/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile
source ~/.bash_profile

pyenv でPythonをインストール

pyenv install 3.5.0

virtualenv でインストールしたPythonの仮想環境を作る

pyenv virtualenv 3.5.0 hoge_env

開発用のホームディレクトリを作って、そのディレクトリと仮想環境を紐付ける

mkdir dev_home
cd dev_home
pyenv local hoge_env

pip moduleを管理するため、 pip-tools をインストール

pip install pip-tools

インストールしたいpipモジュールを記載する

mkdir requirements
vim requirements/bash.in
requirements/bash.in
mysqlclient
simple-db-migrate

requirements/*.in の書き方は http://qiita.com/ryu22e/items/ad3f8f3df30886d23661 参照

requirements/*.in で記載したmoduleをインストール

pip-compile requirements/base.in
pip-sync requirements/*.txt

pip-compile はワイルドカードが使えません。