📘 Python 프로젝트를 위한 Poetry 사용 가이드
1. Poetry란?
Poetry는 Python 프로젝트의 패키지 관리와 가상환경 관리를 통합적으로 지원하는 도구입니다. 현대적인 프로젝트 구조를 지원하며, requirements.txt 없이도 모든 의존성을 깔끔하게 관리할 수 있습니다.
2. Poetry와 pyenv의 차이점
구분 pyenv / pyenv-virtualenv poetry
주요 기능 | Python 버전 & 가상환경 관리 | 프로젝트 및 패키지 관리 |
가상환경 지원 | O | O (자체적으로도 생성 가능) |
패키지 설치/관리 | pip 사용 필요 | poetry 명령어로 간단하게 관리 |
프로젝트 구조 생성 | ❌ 수동 | ✅ 자동 생성 (pyproject.toml) |
배포 기능 | ❌ | ✅ build, publish 지원 |
👉 pyenv는 Python의 설치/버전 관리 도구,👉 Poetry는 프로젝트를 구성하고 의존성 관리까지 책임지는 도구입니다.
3. Poetry 설치
curl -sSL https://install.python-poetry.org | python3 -
환경 변수 등록 (필요 시):
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
설치 확인:
poetry --version
4. 프로젝트 생성 및 구성
✅ 새 프로젝트 생성
mkdir myproject && cd myproject
poetry init # pyproject.toml 생성
✅ 가상환경 진입
poetry shell
✅ 패키지 설치
poetry add flask
설치된 패키지는 pyproject.toml 및 poetry.lock에 자동 기록됩니다.
5. Poetry 명령어 요약
명령어 설명
poetry init | 프로젝트 초기화 (pyproject.toml 생성) |
poetry add [패키지명] | 패키지 설치 및 등록 |
poetry remove [패키지명] | 패키지 제거 |
poetry install | pyproject.toml 기반 전체 설치 |
poetry update | 패키지 업데이트 |
poetry shell | 가상환경 진입 |
poetry run [명령어] | 가상환경 내 명령 실행 |
6. Poetry와 pyenv 함께 쓰는 흐름
pyenv install 3.12.1
pyenv virtualenv 3.12.1 myenv
pyenv local myenv
poetry init
poetry add flask
poetry shell
7. 마무리 팁
- Poetry는 pyproject.toml을 중심으로 프로젝트를 관리합니다.
- requirements.txt 없이도 의존성 관리가 가능합니다.
- pyenv와 조합하면 Python 버전/가상환경도 유연하게 운영할 수 있습니다.
✅ 이제부터는 pip, venv, requirements.txt 대신 Poetry 하나로 깔끔한 Python 프로젝트 환경을 시작해보세요!
'기술블로그' 카테고리의 다른 글
✅ Python 환경 설정부터 Django 설치 (feat. pyenv, Pycharm, Poetry) (0) | 2025.04.29 |
---|---|
Chapter 1-8 Django 템플릿 설정 및 문법 기초 정리 (0) | 2025.04.29 |
🖥️ PyCharm WSL Interpreter 설정 오류 (0) | 2025.04.29 |
📚 WSL 전체 세팅 과정 정리 (0) | 2025.04.29 |
pyenv와 venv의 차이 및 충돌 상황 정리 (Windows 기준) (0) | 2025.04.29 |