Chapter 1-2 Poetry 설치 가이드

2025. 5. 23. 10:21·Fastapi

⚙️ Poetry 설치 가이드

1️⃣ Poetry 설치 전 주의사항

  • Anaconda가 설치되어 있다면 삭제하거나 비활성화한 상태에서 설치할 것.
    • (Anaconda 가상환경이 활성화된 상태에서는 충돌 가능성 있음)
  • pyenv 역시 비활성화 혹은 삭제 후 설치할 것.
  • Homebrew로 설치하지 말 것.
    • 공식 설치 방식과 설정값이 다를 수 있어 권장하지 않음.

2️⃣ Poetry 소개 및 장점

🔗 공식 홈페이지: https://python-poetry.org/

  • pip freeze 없이 자동으로 의존성 관리 (poetry.lock 생성)
  • PEP 518 기반의 pyproject.toml로 프로젝트 통합 관리
    • 참고: PEP 518 문서
    • 예: black, isort, mypy, ruff, coverage, pytest 등의 설정을 한 곳에 관리
    • build.gradle처럼 의존성도 dev, prod로 나눌 수 있음
      • 📦 개발용: black, pytest
      • 🚀 배포용: fastapi, uvicorn
  • pip보다 더 똑똑한 의존성 해결 알고리즘 제공 (참고 링크)

3️⃣ Poetry 설치 방법

📌 Python 버전 확인

python --version  # 예: Python 3.13

💻 macOS

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

 

🪟 Windows PowerShell

(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py - --version 1.8.5

🔁 설치 확인 & Recap

  • poetry 설치 후 아래 명령어로 정상 설치 확인:
poetry --version
  • Poetry를 통해 향후 프로젝트의 의존성을 명확하게 관리 가능.

 


🏗️ Project Init with PyCharm

✅ PyCharm에서 Poetry 프로젝트 시작하기

  1. PyCharm Professional 실행
  2. "New Project" 클릭 → Python 선택
  3. "Poetry" 환경 선택 후 Python Interpreter 설정 (예: Python 3.13)
  4. 프로젝트 경로 설정 및 Create 클릭

🔧 pyproject.toml 초기화

poetry init  # pyproject.toml 생성 마법사 실행
  • 프로젝트 이름, 버전, 설명 등 입력
  • 종속성(예: fastapi, requests 등)을 직접 입력하거나 스킵 가능

또는 빠르게 생성하려면:

poetry init --no-interaction

📦 종속성 추가 예시

poetry add fastapi uvicorn
poetry add --group dev black pytest

이제 프로젝트 디렉토리에 pyproject.toml과 poetry.lock 파일이 생기며, 명확한 버전 관리와 의존성 추적이 가능해집니다.


다음 단계에서는 Poetry 기반 프로젝트의 실행, 테스트, 배포 전략까지 이어서 다룰 예정입니다.

'Fastapi' 카테고리의 다른 글

Chapter 2-1 Pytest 설치 및 단위 테스트 입문 가이드  (0) 2025.05.23
Chapter 1-6 Mypy 설치 및 정적 타입 검사 가이드  (0) 2025.05.23
Chapter 1-5 Git 기본 세팅 및 커밋 가이드  (0) 2025.05.23
Chapter 1-3 Python 코드 포매터 Black 설치 및 설정 가이드  (0) 2025.05.23
Chapter 1-1 Meetifyr - 간편한 약속 일정 조율 웹사이트 리뷰  (0) 2025.05.23
'Fastapi' 카테고리의 다른 글
  • Chapter 1-6 Mypy 설치 및 정적 타입 검사 가이드
  • Chapter 1-5 Git 기본 세팅 및 커밋 가이드
  • Chapter 1-3 Python 코드 포매터 Black 설치 및 설정 가이드
  • Chapter 1-1 Meetifyr - 간편한 약속 일정 조율 웹사이트 리뷰
Chansman
Chansman
안녕하세요! 코딩을 시작한 지 얼마 되지 않은 초보 개발자 찬스맨입니다. 이 블로그는 제 학습 기록을 남기고, 다양한 코딩 실습을 통해 성장하는 과정을 공유하려고 합니다. 초보자의 눈높이에 맞춘 실습과 팁, 그리고 개발하면서 겪은 어려움과 해결 과정을 솔직하게 풀어내려 합니다. 함께 성장하는 개발자 커뮤니티가 되기를 바랍니다.
  • Chansman
    찬스맨의 프로그래밍 스토리
    Chansman
  • 전체
    오늘
    어제
    • 분류 전체보기 (807)
      • Python (32)
      • 프로젝트 (116)
      • 과제 (25)
      • Database (40)
      • 멘토링 (11)
      • 특강 (37)
      • 기술블로그 (42)
      • 기술블로그-Fastapi편 (33)
      • 기술블로그-Django편 (154)
      • 기술블로그-Flask편 (36)
      • AI 분석 (5)
      • HTML & CSS (31)
      • JavaScript (17)
      • AWS_Cloud (21)
      • 웹스크래핑과 데이터 수집 (14)
      • Flask (42)
      • Django (77)
      • Fastapi (16)
      • 연예 (14)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    livebroadcast
    titaniumcase
    btsdischarge
    classaction
    gpterror
    hotcoffeecase
    btsreunion
    btscomeback
    youngprofessionals
    bts
    college reunions
    travel ban
    global politics
    self-growth
    homebartrend
    remittance
    btsjungkook
    chinanightlife
    RM
    americanlaw
    trumpmuskclash
    americaparty
    life reflection
    smartphonedurability
    뷔
    urbantrends
    basalcellcarcinoma
    lawsuitculture
    chatgpterror
    newpoliticalparty
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Chansman
Chapter 1-2 Poetry 설치 가이드
상단으로

티스토리툴바