Posts pyenv
Post
Cancel

pyenv

pyenv

https://github.com/pyenv/pyenv

  • python version 및 virtual environment를 관리하기 위해서 사용
  • 폴더별로 어떤 환경을 사용할 것인지 설정하면 자동으로 activate 되기 때문에 매우 편리

Install pyenv

1
2
3
4
5
6
7
8
$ brew install pyenv
$ brew install pyenv-virtualenv
$ brew install pyenv-which-ext

$ vim ~/.zshrc 또는 vim ~/.bash_profile
# pyenv
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

Install python versions

1
2
3
4
$ pyenv install --list
$ pyenv install 2.7.14
$ pyenv install 3.6.3
$ pyenv install miniconda3-4.3.30

Create a virtual environmen

1
2
3
4
$ pyenv virtualenv 2.6.14 myenv2
$ pyenv virtualenv miniconda3-4.3.30 myenv3
# [Ana|mini]conda 환경은 자동으로 conda로 생성

Activate and deactivate virtual environments

1
2
3
4
5
6
7
8
9
10
11
$ pyenv activate myenv2
(myenv2) $ python -V

$ pyenv activate myenv3

# [Ana|mini]conda 환경을 activate했을 때, '... in not a virtualenv' 에러가 발생한다면
# 관련 이슈: https://github.com/pyenv/pyenv-virtualenv/issues/178
$ ln -s ~/.pyenv/versions/miniconda3-4.3.30/bin/activate ~/.pyenv/versions/miniconda3-4.3.30/envs/myenv3/bin/
$ ln -s ~/.pyenv/versions/miniconda3-4.3.30/bin/conda ~/.pyenv/versions/miniconda3-4.3.30/envs/myenv3/bin/

(myenv3) $ conda env list

pyenv 설정하기

1
2
3
4
5
6
7
8
9
10
11
$ cd myproject
$ pyenv versions

# system global한 기본 python 환경 지정
$ pyenv global myenv2

# 현재 shell session에서 사용할 python 환경 지정
$ pyenv shell myenv3

# 폴더에서 계속 사용할 python 환경 지정 (폴더 진입시 자동 activation)
$ pyenv local myenv3
This post is licensed under CC BY 4.0 by the author.