Files
fg-auto/build/autouploader/Dockerfile
2025-12-11 13:22:54 +09:00

47 lines
1.5 KiB
Docker

FROM ubuntu:22.04
ENV DEBIAN_FRONTEND=noninteractive \
LANG=ko_KR.UTF-8 \
LANGUAGE=ko_KR:ko \
LC_ALL=ko_KR.UTF-8
RUN apt-get update && \
apt-get install -y --no-install-recommends \
locales tzdata bash python3 python3-pip cron curl unzip wget gnupg ca-certificates \
xvfb x11-utils libglib2.0-0 libnss3 libgconf-2-4 libfontconfig1 \
libxss1 libxshmfence1 libasound2 libxtst6 libappindicator3-1 \
fonts-nanum libu2f-udev && \
locale-gen ko_KR.UTF-8 && \
ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime && \
dpkg-reconfigure --frontend noninteractive tzdata && \
ln -sf /usr/bin/python3 /usr/bin/python && \
curl -fsSL https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb -o chrome.deb && \
apt-get install -y ./chrome.deb && rm chrome.deb && \
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
# Python 패키지 설치
RUN pip install --no-cache-dir --upgrade pip && \
pip install --no-cache-dir \
selenium>=4.10 \
pymysql \
ftputil \
pillow \
pyvirtualdisplay \
requests
WORKDIR /app
RUN fc-cache -f -v
# autouploader 디렉토리의 모든 Python 스크립트 및 설정 파일 복사
# context: . (프로젝트 루트) 이므로 autouploader/ 에서 복사
COPY autouploader/ /app/
RUN chmod +x /app/run.sh
# crontab 등록 (docker logs에 출력되도록 설정)
RUN echo "0 9 * * * /app/run.sh 2>&1" | crontab -
# Cron 로그를 docker logs로 보내기 위해 포그라운드에서 실행
CMD ["/bin/bash", "-c", "cron -f"]