updated_at: 2025-08-26 11:35

requirement

requirements.txt란

파이썬 프로젝트가 실행되기 위해 필요한 모든 외부 라이브러리(패키지)와 그 정확한 버전을 기록해 둔 간단한 텍스트 파일입니다.

  • 재현성 (Reproducibility): 다른 컴퓨터(동료 개발자, 서버 등)에서도 pip install -r requirements.txt 명령어 하나만으로 당신과 똑같은 개발 환경을 완벽하게 복제할 수 있습니다.
  • 협업 (Collaboration): 팀원이 새로 프로젝트에 참여했을 때, 어떤 라이브러리를 설치해야 할지 일일이 알려줄 필요가 없습니다.
  • 의존성 관리: 내 프로젝트가 request

가상 환경(Virtual Environment) 사용하기

requirements.txt는 절대로 당신의 컴퓨터 전체에 설치된 파이썬 라이브러리를 기준으로 만들면 안 됩니다. 오직 이 프로젝트만을 위한 격리된 "가상 환경" 안에서 만들어야 합니다.

1단계: 가상 환경 생성 및 활성화

아직 가상 환경을 사용하고 있지 않다면, 프로젝트 루트 디렉토리에서 터미널을 열고 딱 한 번만 실행해주세요.

1.1 가상 환경 생성 (폴더 이름은 보통 venv):

python3 -m venv venv

1.2 가상 환경 활성화 (프로젝트 작업을 시작할 때마다 실행)

  • Linux / macOS:
source venv/bin/activate
  • Windows (Git Bash):
source venv/Scripts/activate
  • Windows (Command Prompt / PowerShell):
.\venv\Scripts\activate

활성화되면 터미널 프롬프트 앞에 (venv)가 붙게 됩니다. 이 상태에서 설치하는 모든 패키지는 시스템 전체가 아닌, 이 venv 폴더 안에만 설치됩니다.

2단계: 필요한 모든 라이브러리 설치하기

pip install flask gunicorn gevent
pip install python-dotenv redis pymysql
pip install chromadb sentence-transformers torch
pip install requests

3단계: requirements.txt 파일 자동 생성 (가장 중요한 명령어)

모든 라이브러리가 설치되었다면, 터미널에 다음 명령어를 입력하세요.

pip freeze > requirements.txt
  • pip freeze: 현재 활성화된 가상 환경에 설치된 모든 패키지와 그 정확한 버전을 목록으로 출력합니다.
  • 그 출력 결과를 requirements.txt라는 파일에 저장(리디렉션) 합니다.

requirements.txt 파일의 내용 예시

# Flask & Gunicorn
Flask==3.0.0
gunicorn==22.0.0
gevent==24.2.1

# Handlers & Clients
requests==2.31.0
python-dotenv==1.0.1
redis==5.0.4
PyMySQL==1.1.0

# AI & Vector DB
chromadb==0.4.24
sentence-transformers==2.7.0
torch==2.3.0
# ... 그 외 의존성 패키지들 (numpy, tqdm 등) ...

requirements.txt 사용하는 방법

배포용으로 만들때 기존 라이브러리를 설치하려면 아래의 명령을 실행합니다.
그러면 requirements.txt에 적힌 모든 라이브러리가 정확한 버전으로 자동으로 설치됩니다.

pip install -r requirements.txt
평점을 남겨주세요
평점 : 5.0
총 투표수 : 1

질문 및 답글