[Python] Poetry 설치 과정

[Python] Poetry 설치 과정

파이썬에서 의존성 패키지 관리에 있어서 pip의 단점을 보완한 Poetry를 이번 파이콘 2023에서 언급이 자주되어 사용해보기로 했다. pip에서 매번 pip freeze 명령을 통해 requirements.txt 파일을 만들어 의존성 패키지 목록을 locking 하는 과정을 자동으로 처리해준다고 한다. 하지만 pip 버전이 올라가면서 저 기능도 지원하기 시작했다고 한다. 그러나 단순히 저 부분 외에도 많은 부분에 이점이 있다고하니 써보고 몸으로 체감해보려고 한다.

단순히 설치하고 끝났으면 이 글을 쓰지 않았을텐데 오랫만에 컴퓨터를 써보니 설치하는 과정마저도 삽질의 연속이다.

Poetry 설치

$ curl -sSL https://install.python-poetry.org | python -

위 curl 명령을 실행하기 전에 터미널에서 $ python -V 커맨드로 python 명령이 유효한지 확인해본다. python이 설치되지 않았거나 python2 버전이 남아있을 경우 python3로 위 커맨드에 python 키워드를 python3로 변경해야할 수도 있다.

결론: 설치가 안됨.

ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1045)

위 에러가 발생하면서 설치가 되지 않았다. 검색해보니 여러가지 방법이 나오는데..

  • $ pip install certifi 커맨드 실행
  • $ pip install –upgrade certifi 커맨드 실행
  • Finder > Applications > Python3.xx > Install Certificates.command 더블 클릭

3가지 방법 모두 안되었고 마지막에 마지막 방법에서 발견한 힌트는 Permission 에러였다는 것. 파이썬이 전역 설치되었기 때문에 ~/Applications가 아닌 /Application에 설치되었을때 발생할 수 있는 케이스이며 이럴땐 관리자(root) 권한으로 실행해야 한다.

$ sudo /Applications/Python3.10/Install Certificates.command

관리자 권한으로 더블 클릭하는 방법은 몰라서 터미널을 통해 sudo 권한으로 Install Certificates.command 파일을 실행시켰다. 맥북 패스워드를 묻는 프롬프트 입력 창이 뜨고 암호를 입력하면 ssl 문제가 해결된다. 이제 다시 원점으로..

이 단계까지 완료되었다면 맨 위에 Poetry 설치 커맨드를 다시 실행해보자.

# Welcome to Poetry!

This will download and install the latest version of Poetry,
a dependency and package manager for Python.

It will add the `poetry` command to Poetry's bin directory, located at:

/Users/username/.local/bin

You can uninstall at any time by executing this script with the --uninstall option,
and these changes will be reverted.

Installing Poetry (1.5.1): Done

Poetry (1.5.1) is installed now. Great!

To get started you need Poetry's bin directory (/Users/username/.local/bin) in your `PATH`
environment variable.

Add `export PATH="/Users/username/.local/bin:$PATH"` to your shell configuration file.

Alternatively, you can call Poetry explicitly with `/Users/username/.local/bin/poetry`.

You can test that everything is set up by executing:

`poetry --version`

poetry가 설치되면 이런 메시지를 만날 수 있다. 설치는 되었지만 poetry 커맨드를 쳐보면 실행이 되지 않는다. 위 메시지에서도 확인할 수 있듯 실행 중인 세션의 터미널 프로파일에 환경 변수를 추가해줘야한다.

나는 zsh를 사용하니 아래와 같이 추가했다.

  • vi로 프로파일 설정 열기: $ vi ~/.zshrc
  • 환경 변수 추가: export PATH=”/Users/username/.local/bin:$PATH”
  • 프로파일 현재 터미널 세션에서 갱신: $ source ~/.zshrc

마지막으로 잘 실행되는지 확인해보자.

$ poetry --version
>> Poetry (version 1.5.1)

후기: 시작도 안했는데 지친다. 파이썬 쉬운건 옛말이다.

%d 블로거가 이것을 좋아합니다: