사실 하나의 컴퓨터에서 여러 파이썬 프로젝트에 동시에 진행하고 있으면 가상 환경을 매번 활성화하고 비활성화하면, 굉장히 귀찮을 뿐만 아니라 자잘한 실수로 이어질 수 있습니다. direnv를 사용하면 특정 디렉토리와 그 하위 디렉토리 안에서만 파이썬 환경이 활성화되고, 그 디렉토리들을 벗어나면 비활성화되게 설정 할 수 있습니다.
설치
1. direnv 설치
brew install direnv
쉘과 연결
# 파일 열고
vi ~/.zshrc
# 이걸 파일 끝에 추가 / 저장하고 닫기
eval "$(direnv hook zsh)"
자동화
# 파일 만들고
touch .envrc
# 이걸 파일 내용에 추가
source ./data_science_env/bin/activate # 가상환경 폴더 잘 설정
echo "virtualenv changed to `which python`"
unset PS1
.envrc 파일은 새롭게 만들거나 수정할 때마다 해당 파일을 사용하겠다고 직접적으로 알려줘야지만 사용할 수 있습니다.
direnv allow
그럼 .envrc 파일 안 내용이 실행되고 파이썬 가상 환경이 적용됩니다. 현재 사용하고 있는 파이썬 가상 환경이 출력되는 걸 확인할 수 있습니다. 하지만 일반적으로 가상 환경을 사용할 때와는 다르게 프롬트 앞에 가상 환경 이름이 안 나올텐데요. 조금 이상하죠? direnv를 사용하면 자체적으로 프롬트를 바꿀 수 없습니다. 이걸 개선하고 싶다면 이 내용을 따라합니다.
# 파일 열고
vi ~/.zshrc
# 아래 내용 추가
show_virtual_env() {
if [[ -n "$VIRTUAL_ENV" && -n "$DIRENV_DIR" ]]; then
echo "($(basename $VIRTUAL_ENV))"
fi
}
PS1='$(show_virtual_env)'$PS1
이렇게 하면 디렉토리를 이동할 때마다 자동으로 가상환경을 켜고 끌 수 있습니다.
'개발환경 세팅 > 파이썬 환경 For Mac' 카테고리의 다른 글
[파이썬 환경 FOR MAC] 12. 파이썬 가상환경 공유하기 (0) | 2023.12.03 |
---|---|
[파이썬 환경 FOR MAC] 11. 파이썬 가상환경 (0) | 2023.12.03 |
[파이썬 환경 FOR MAC] 10. 파이썬 minor 버전 중복 설치 (1) | 2023.12.03 |
[파이썬 환경 FOR MAC] 9. 파이썬 환경 (0) | 2023.12.03 |
[파이썬 환경 FOR MAC] 8. 파이썬 패키지, pip, 인터프리터 (0) | 2023.12.03 |