Poetry 설치했으나 경로 찾을 수 없을 때 (poetry installed but command not found) (Windows 10 / mac)
발단
Nomad Coders의 에어비앤비 클론 코딩 수강을 시작했습니다.
그 중 초반에 해당하는 1.1 강에서 파이썬 패키지 관리툴인 poetry를 설치하고 실행하는 부분이 있는데
Poetry 공식 홈페이지 - Documentation - Intallation에서 알려주는대로 설치했지만
터미널에서 poetry --version을 입력했을 때 poetry: command not found만 나와
이를 약간의 설정을 통해 해결했고 비슷한 문제를 겪는 분이 계실 것 같아 포스팅을 남깁니다.
원인
일단 무언가를 설치했는데 실행하려고 터미널에서 명령어를 입력했을 때 command not found가 나온다면
1. 환경 변수가 설정되어 있지 않거나
2. 환경 변수의 경로가 잘못 지정되어 있거나
둘 중 하나입니다.
즉 이를 해결하기 위해선 poetry가 설치된 경로를 찾고 이 경로를 환경 변수에 정확히 지정해 설정해주면 됩니다.
이 점을 기억하고 이제 해결하러 가봅시다.
해결
mac
우선 공식 문서에 올라와 있는 것 처럼
curl -sSL https://install.python-poetry.org | python3 -
위 커맨드를 통해 poetry를 설치하셨을 겁니다.
그렇다면 poetry가 설치된 경로를 찾는 게 우선입니다.
먼저 finder 를 열고 command + ⬆️ 를 입력해서 가장 상위 폴더로 이동합니다
이 상태에서 shift + cmd + . 을 입력해서 숨김 폴더를 보이게 처리합니다.
검색해보면 poetry 는 대체로 $HOME/.poetry/bin 혹은 $HOME/.local/bin 폴더에 설치되는 듯 하니 이 곳을 뒤져보면 되는데
여기서 $HOME은 이미 설정되어 있는 환경 변수로 대체로 사용자\사용자 계정을 뜻합니다.
그렇기 때문에 저는 사용자\takeknowledge 하위 폴더를 확인했는데
.poetry 폴더는 보이지 않았지만 .local 폴더가 보여 하위를 확인하니 bin 폴더 하위에 poetry 실행 파일이 보이더군요.
럭키! 찾았습니다.
이제 경로를 알았으니 이를 환경 변수로 잘 등록해 주기만 하면 됩니다
이를 위해선 .zshrc 파일을 실행해야 하는데 이는 vscode 를 활용하면 편합니다.
.zshrc 파일은 $HOME 에 있기 때문에 vscode의 터미널에서
code ~/.zshrc
라고 입력하면 .zshrc 파일이 vscode 에서 열립니다.
이제 이 곳에
export PATH=$HOME/.local/bin:$PATH
라고 입력한 다음 (poetry 실행 파일이 다른 곳에 있는 분은 .local/bin 대신에 그 곳의 경로를 적어주셔야 합니다) 저장하고
vscode 를 재시작하여 터미널에 poetry --version 을 입력해보면
이렇게 설치된 poetry version 정보가 나올 것이고 이렇게 되면 환경 변수 설정이 잘 된 것 입니다.
windows
window에선 Powershell 을 열고
(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -
위 커맨드를 입력해 poetry 를 설치하셨을 겁니다.
이제 poetry 실행 파일의 경로를 찾아봅시다. 검색해보면 주로
C:\Users(사용자)\사용자이름\AppData(보이지 않으면 숨김 파일 표시 필요)\Roaming
에서 python\scripts 하위 혹은 pypoetry\venv\scripts 하위에 있다고 하는데
저는 두 군데 다 존재하네요. 스샷을 찍을 수 없는 제 업무용 pc에서는 pypoetry 하위에만 존재했는데
이게 pc 환경마다 다른 것 같으니 잘 찾아 보시길 바랍니다.
경로를 찾았으니 이제 등록을 해봅시다
시작 버튼을 누르고 windows 검색창에 환경이라고만 쳐도 환경 변수 편집 프로그램이 나옵니다
진입한 후 밑줄친 환경 변수 버튼을 클릭하면 나오는 화면에서
Path를 선택해 편집 버튼을 눌러보면 환경 변수 편집 목록이 나오는데
역시 여기에 poetry 실행 파일 경로가 없네요. 이게 문제였습니다. 등록해 봅시다
새로 만들기 버튼을 클릭 한 후
위에서 찾은 poetry 실행 파일이 있던 경로를 입력해 확인 버튼을 누른 다음
vscode 를 껐다 다시 켜서 terminal에 poetry --version 을 입력해보면
버전이 잘 노출되고 이러면 환경 변수 설정이 잘 완료된 것이라 poetry를 사용하실 수 있습니다.
간혹 이 과정을 거쳤는데도 안되는 경우가 있다던데
그런 경우 terminal 혹은 vscode를 관리자 권한으로 실행하면 된다는 팁도 봐서
혹시 여기까지 따라했는데 안되신다면 관리자 권한으로 실행해서 확인해보시길 바랍니다.
도움이 되는 포스팅이었으면 좋겠습니다.
그럼 모두 즐코딩하세요~