From 594bcd089765d6283ee53ea99ad544a5f22eaf3f Mon Sep 17 00:00:00 2001 From: KWON Date: Mon, 21 Jul 2025 17:41:38 +0900 Subject: [PATCH] Dockerfile update --- build/Dockerfile | 61 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 build/Dockerfile diff --git a/build/Dockerfile b/build/Dockerfile new file mode 100644 index 0000000..4b18f23 --- /dev/null +++ b/build/Dockerfile @@ -0,0 +1,61 @@ +FROM ubuntu:22.04 + +ENV DEBIAN_FRONTEND=noninteractive + +# 시스템 패키지 설치 +RUN apt-get update && apt-get install -y --no-install-recommends \ + build-essential \ + gcc \ + libsqlite3-dev \ + libssl-dev \ + libffi-dev \ + libbz2-dev \ + libreadline-dev \ + libsqlite3-dev \ + libncurses5-dev \ + libgdbm-dev \ + liblzma-dev \ + libtk8.6 \ + tk8.6-dev \ + tcl8.6-dev \ + wget \ + curl \ + unzip \ + git \ + && rm -rf /var/lib/apt/lists/* + +# 작업 디렉토리 +WORKDIR /app + +# 애플리케이션 소스 복사 +COPY ../app ./app +COPY ../conf ./conf +COPY ../lib ./lib +COPY ../data ./data +COPY requirements.txt . + +# tkcalendar, customtkinter GUI 라이브러리 의존성 +RUN pip install --no-cache-dir \ + tkcalendar \ + customtkinter + +# pip 패키지 설치 (필요한 모든 모듈 명시) +RUN pip install --no-cache-dir \ + sqlalchemy \ + pandas \ + prophet \ + statsmodels \ + scikit-learn \ + numpy \ + requests \ + pyyaml \ + google-analytics-data \ + lxml \ + mysql-connector-python \ + pymysql + +# 포트 오픈 +EXPOSE 5000 + +# 기본 실행 명령 +CMD ["python3", "app/app.py"] \ No newline at end of file