# Dockerfile # 1. 베이스 이미지 선택 # 파이썬 3.10의 가벼운(slim) 버전을 기반으로 시작합니다. FROM python:3.10-slim # 2. 작업 디렉토리 설정 # 컨테이너 내에서 명령어를 실행할 기본 폴더를 설정합니다. WORKDIR /workspace # 3. 의존성 파일 복사 및 설치 # 먼저 의존성 목록 파일을 복사합니다. (이것만 바뀌었을 경우 빌드 속도 향상) COPY requirements.txt . COPY workspace/ . # requirements.txt에 명시된 라이브러리들을 설치합니다. # --no-cache-dir 옵션은 불필요한 캐시를 남기지 않아 이미지 크기를 줄여줍니다. RUN pip install --no-cache-dir -r requirements.txt COPY workspace/app.py . # 4. 앱 소스 코드 복사 # 현재 폴더의 모든 파일을 컨테이너의 /app 폴더로 복사합니다. COPY . . # 5. 포트 노출 # Streamlit의 기본 포트인 8501을 외부에 노출하도록 설정합니다. EXPOSE 8501 # 6. 컨테이너 실행 명령어 설정 # 컨테이너가 시작될 때 실행할 명령어를 정의합니다. # --server.address=0.0.0.0 옵션은 컨테이너 외부에서의 접속을 허용하기 위해 필수입니다. CMD ["streamlit", "run", "app.py", "--server.port=8501", "--server.address=0.0.0.0"]