initial commit
This commit is contained in:
63
한국투자증권(API)/MCP/Kis Trading MCP/Dockerfile
Normal file
63
한국투자증권(API)/MCP/Kis Trading MCP/Dockerfile
Normal file
@@ -0,0 +1,63 @@
|
||||
# Python 3.13 slim 이미지 사용
|
||||
FROM python:3.13-slim
|
||||
|
||||
# 작업 디렉토리 설정
|
||||
WORKDIR /app
|
||||
|
||||
# 시스템 패키지 업데이트 및 필요한 패키지 설치
|
||||
RUN apt-get update && apt-get install -y \
|
||||
gcc \
|
||||
g++ \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Python 의존성 설치를 위한 uv 설치
|
||||
RUN pip install uv
|
||||
|
||||
# pyproject.toml 복사 (uv.lock이 없을 수 있으므로)
|
||||
COPY pyproject.toml ./
|
||||
|
||||
# uv.lock이 있으면 복사, 없으면 의존성만 설치
|
||||
COPY uv.lock* ./
|
||||
|
||||
# 의존성 설치 (uv.lock이 있으면 frozen, 없으면 일반 설치)
|
||||
RUN if [ -f uv.lock ]; then uv sync --frozen; else uv sync; fi
|
||||
|
||||
# 애플리케이션 코드 복사
|
||||
COPY . .
|
||||
|
||||
# 환경변수 설정
|
||||
ENV ENV=live
|
||||
ENV PYTHONPATH=/app
|
||||
|
||||
# 포트 노출 (HTTP 서버용)
|
||||
EXPOSE 3000
|
||||
|
||||
# 환경변수 정의 (런타임에 설정됨)
|
||||
ENV KIS_APP_KEY=""
|
||||
ENV KIS_APP_SECRET=""
|
||||
ENV KIS_PAPER_APP_KEY=""
|
||||
ENV KIS_PAPER_APP_SECRET=""
|
||||
ENV KIS_HTS_ID=""
|
||||
ENV KIS_ACCT_STOCK=""
|
||||
ENV KIS_ACCT_FUTURE=""
|
||||
ENV KIS_PAPER_STOCK=""
|
||||
ENV KIS_PAPER_FUTURE=""
|
||||
ENV KIS_PROD_TYPE=""
|
||||
ENV KIS_URL_REST=""
|
||||
ENV KIS_URL_REST_PAPER=""
|
||||
ENV KIS_URL_WS=""
|
||||
ENV KIS_URL_WS_PAPER=""
|
||||
|
||||
# 시작 스크립트 생성
|
||||
RUN echo '#!/bin/bash\n\
|
||||
set -e\n\
|
||||
\n\
|
||||
echo "Starting KIS Trade MCP Server..."\n\
|
||||
echo "Environment: $ENV"\n\
|
||||
\n\
|
||||
# MCP 서버 시작 (HTTP 모드)\n\
|
||||
exec uv run python server.py\n\
|
||||
' > /app/start.sh && chmod +x /app/start.sh
|
||||
|
||||
# 시작 스크립트 실행
|
||||
CMD ["/app/start.sh"]
|
||||
Reference in New Issue
Block a user