(참고자료) https://python-poetry.org/docs/basic-usage/
* 새 프로젝트 시작하기
> poetry new [project-name]
아래와 같이 프로젝트 구조가 세팅된다.

pyproject.toml 파일을 살펴보면

* 기존 프로젝트에서 시작하기
cd pre-existing-project
> poetry init
* 의존성 추가하기
> poetry add [package-name]
* 의존성 설치하기
> poetry install
* 가상 환경 활성화
> poetry shell
> python main.py # 가상환경 활성화 상태에서는 의존성 포함 실행 가능
* 가상 환경 비활성화 상태에서 실행
> poetry run main.py
PyPi 등에 배포할 대
* build
> poetry build
* pubish
> poetry publish
[재정리]
* 프로젝트 초기화
> cd my-project
> poetry init
프로젝트 초기화를 진행하면 poetry.toml 파일이 생성된다.
* 가상환경 활성화
> poetry shell
생성된 poetry.toml에 선언된 파이썬 가상 환경이 생성 및 실행된다.
poetry.toml 파일이 있는 폴더에서 실행해야 한다.
* 의존성 설치
> poetry install
poetry.toml에 선언된 의존성을 설치한다.
해당 위치에서 처음 실행하여 poetry.lock 파일이 없는 경우 생성한다.
이전에 생성한 poetry.lock 파일이 있는 경우 해당 파일의 내용을 사용하여 의존성을 설치한다.
* 의존성 추가
> poetry add [package-name]
의존성을 추가하면 toml 파일에 선언이 추가되고, 의존성이 설치되고, lock 파일에 의존성 설치 결과가 업데이트 된다.
버전을 지정하고 싶다면 아래와 같이 의존성을 추가한다.
> poetry add [package-name]@[version]
> poetry add python@3.10
> poetry add "flask@^1.1"
캐럿(^)을 사용하면 메이저버전이 동일한 범위에서 호환되는 버전을 설치한다(1.1<=, <2.0). (시멘틱 버저닝)
* 의존성 버전 업데이트
> poetry update
의존성을 업데이트 하면 각 항목의 최신 버전이 toml 파일이 선언으로 업데이트되고, 의존성 설치, lock 파일에 의존성 설치 결과가 업데이트 된다.
> poetry update [package-name]
패키지 이름을 지정하면 해당 패키지만 업데이트 가능하다.
* 의존성 삭제
> poetry remove [package-name]
toml 파일 업데이트, 의존성 삭제, lock 파일 업데이트를 진행한다.
* 설치된 의존성 목록 보기
> poetry show
업데이트가 필요한 패키지만 보고 싶은 경우
> poetry show --outdated
* 의존성 목록(poetry.toml)을 requirements.txt 형태로 export하기
> poetry export -f requirements.txt --output requirements.txt --without-hashes
'Software Engineering > Python' 카테고리의 다른 글
| fastapi background task를 사용하여 지연 동작 수행하기 (0) | 2024.07.05 |
|---|---|
| mac에서 poetry 설치하기 (0) | 2024.07.02 |
| windows 환경에서 poetry 설치하기 (0) | 2024.07.02 |
| python logging 설정 예제 (1) | 2024.06.24 |
| sample project 연습 (1) | 2024.06.20 |