前提
- どっかにプロジェクト用のディレクトリを掘っておく
- とりあえず今回は~/foo-bar-py としておく
- mkdir ~/foo-bar-py
- cd ~/foo-bar-py
install
- brew install pipenv
ope
プロジェクトの初期化
- pipenv install --python 3.7.3
- こんな失敗したら、pyenvがなんかおかしいので、pyenv install 3.7.3 && pyenv local 3.7.3 しておくといいかも。
⠴ Creating virtual environment...Using base prefix '/usr/local/Cellar/python/3.7.3/Frameworks/Python.framework/Versions/3.7' New python executable in /Users/xxx/.local/share/virtualenvs/xxx-XoFfHCVs/bin/python3.7 Not overwriting existing python script /Users/xxx/.local/share/virtualenvs/xxx-XoFfHCVs/bin/python (you must use /Users/xxx/.local/share/virtualenvs/xxx-XoFfHCVs/bin/python3.7) Installing setuptools, pip, wheel... done. Running virtualenv with interpreter /usr/local/bin/python3
- 初期化の際、pipenv installをそのまま実行すると、仮想環境が~/.local/share/virtualenvs/ に作成される
それではだいたい具合が悪いので、指定する方法がある
$WORKON_HOMEで仮想環境の親ディレクトリを指定
- export WORKON_HOME=~/foo-bar-py/.venv && pipenv install --python 3.7.3
実行結果
$ tree -a -L 1 . ├── .venv ├── Pipfile └── Pipfile.lock
- その他
- export PIPENV_VENV_IN_PROJECT=1 プロジェクト直下に仮想環境つくる(ただし、プロジェクト直下を判定しているのはPipfileが置かれている場所)
- $VIRTUAL_ENV すでにある仮想環境を使う。