FROM python:3.11-slim # 작업 디렉토리 설정 WORKDIR /app # 시스템 패키지 업데이트 및 필요한 패키지 설치 RUN apt-get update && apt-get install -y \ gcc \ g++ \ libpq-dev \ curl \ && rm -rf /var/lib/apt/lists/* # Poetry 설치 RUN pip install poetry # Poetry 설정 ENV POETRY_NO_INTERACTION=1 \ POETRY_VENV_IN_PROJECT=1 \ POETRY_CACHE_DIR=/tmp/poetry_cache # 의존성 파일 복사 COPY pyproject.toml poetry.lock* ./ # 의존성 설치 RUN poetry install --only=main && rm -rf $POETRY_CACHE_DIR # 애플리케이션 코드 복사 COPY src/ ./src/ # 업로드 디렉토리 생성 RUN mkdir -p /app/uploads # 포트 노출 EXPOSE 8000 # 애플리케이션 실행 CMD ["poetry", "run", "uvicorn", "src.main:app", "--host", "0.0.0.0", "--port", "8000"]