본문 바로가기
파이썬(Python)

poetry으로 파이썬으로 패키지 버전 관리하기 - 기초

by 기계공학 주인장 2025. 1. 26.
반응형

일반적으로 python 패키지는 requirements.txt로 관리하는 분들이 많을 거라 생각합니다.

 

하지만, requirements.txt로 관리하면 사용 중인 python 버전 자체를 관리하지 못할뿐더러

 

requirements.txt는 단순히 현재 사용 중인 패키지 전체를 저장하기 때문에

 

다른 환경에서 그냥 requirements.txt로 패키지를 설치하면 의존성 충돌이 발생할 가능성이 있습니다.

 

poetry를 사용하면 위와 같은 문제를 해결할 수 있기 때문에 poetry를 사용해서 패키지를 관리해 보겠습니다.


poetry란?

poetry이란 파이썬 프로젝트의 의존성 관리, 패키지 관리, 가상 환경 관리, 그리고 패키지 배포를 종합적으로 처리하는 도구입니다.

 

poetry는 pyproject.toml를 사용해서 의존성 및 메타 데이터를 관리하며

 

Poetry.lock을 사용해서 정확한 버전의 의존성을 보장합니다.

 


poetry 설치하기

공식 문서는 다음과 같습니다.

 

https://python-poetry.org/docs/#installing-with-the-official-installer

 

Introduction | Documentation | Poetry - Python dependency management and packaging made easy

pipx is used to install Python CLI applications globally while still isolating them in virtual environments. pipx will manage upgrades and uninstalls when used to install Poetry. Install pipx If pipx is not already installed, you can follow any of the opti

python-poetry.org

 

저는 맥북을 사용하기 때문에 다음과 같은 방법으로 설치를 해보겠습니다.

(윈도우를 사용하는 분들은 공식 문서를 참조하시길 바랍니다. 설치 커맨드나 환경변수가 다릅니다.)

 

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

 

그럼 다음과 같이 설치가 완료된 모습을 볼 수 있습니다.

 

 

그러면 이제 환경변수에 poetry를 사용하도록 추가해야 합니다.

 

설치가 정상적으로 됐다면 다음과 같이 poetry가 설치된 위치가 표시됩니다.

 

설치 위치: /Users/~~

 

저 같은 경우에는 zsh를 사용하기 때문에 다음과 같이 환경 변수를 추가했습니다.

 

먼저 .zshrc를 열고 

 

nano ~/.zshrc

 

다음과 같은 환경 변수를 추가합니다.

 

export PATH="/Users/사용자이름/.local/bin:$PATH"

 

참고로 zsh 에디터의 저장 및 종료 커맨드는 다음과 같습니다.

 

  • 저장: Ctrl + O → Enter
  • 종료: Ctrl + X

이후에 다음 커맨드를 사용하여 .zshc를 저장합니다.

 

source ~/.zshrc

 

이후 다음 커맨드를 사용해서 설치와 환경변수가 올바르게 설정되었는지 확인한다.

 

poetry --version

 

 


PyCharm에서 poetry 사용하기 - 새로운 프로젝트에서 사용하기

저는 PyCharm을 사용하여 파이썬 개발을 하기 때문에 PyCharm에서 poetry을 사용해 보겠습니다.

 

참고로 공식 가이드라인이 있기 때문에 이 내용을 그대로 따라가 보겠습니다.

 

https://www.jetbrains.com/help/pycharm/poetry.html#install-poetry

 

Configure a Poetry environment | PyCharm

 

www.jetbrains.com

 

먼저 완전히 새로운 파이썬 프로젝트를 시작할 때 poetry을 사용해서 파이썬 개발 환경을 관리하도록 설정하는 방법입니다.

 

1. Custom environment를 클릭한다.


2. Type을 Poetry로 변경하고 Base python, Path to peotry가 올바르게 설정되어 있는지 확인한다.

Poetry로 설정해서 파이썬 프로젝트 만들기


3. 새로운 파이썬 프로젝트를 생성하고 pyproject.toml 파일이 생성되어 있는지 확인한다.

 


PyCharm에서 poetry 사용하기 - 기존 프로젝트에서 변경하기

이번에는 기존 프로젝트에서 python interpreter를 변경해서 poetry를 사용하도록 변경해 보겠습니다.

 

1. PyCharm의 Settings를 열고 Project: <프로젝트이름> 탭 열기

기존 파이썬 interpreter

2. Add interpreter를 클릭해서 poetry 추가하기

 

3. pyproject.toml 파일이 생성되어 있는지 확인한다.

 

 

 

4. 다음 커맨드를 사용해서 기존 requirements.txt에 있던 패키지들을 pyproject.toml로 옮긴다.

(프로젝트의 루트 디렉터리에서 실행해야 한다.)

poetry add $(cat requirements.txt | awk -F '==' '{print $1}')

 

기존 패키지들이 옮겨짐


poetry를 사용해서 패키지 추가하기

기존에는 pip을 사용해서 패키지를 추가했다면 poetry에서는 poetry 명령어를 사용해서 패키지를 설치할 수 있습니다.

 

poetry add <패키지명>

pyproject.toml에 기록된 패키지로 requirements.txt 만들기

 

다음과 같은 커맨드를 사용하여 pyproject.toml에 기록된 패키지 새롭게 requirements.txt 파일로 만들 수 있습니다.

 

poetry export -f requirements.txt --output requirements.txt

poetry으로 파이썬으로 패키지 버전 관리하기 - 정리

이번 포스팅에서는 poetry으로 파이썬으로 패키지 버전 관리를 하는 방법에 대해 알아봤습니다.

 

반응형


"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."


댓글