forked from lukaszett/Knack-Scraper
41 lines
926 B
Docker
41 lines
926 B
Docker
FROM python:3.12-slim
|
|
|
|
RUN mkdir /app
|
|
RUN mkdir /data
|
|
|
|
# Install build dependencies
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
gcc \
|
|
g++ \
|
|
gfortran \
|
|
libopenblas-dev \
|
|
liblapack-dev \
|
|
pkg-config \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
#COPY /data/knack.sqlite /data
|
|
|
|
WORKDIR /app
|
|
COPY requirements.txt .
|
|
RUN pip install --no-cache-dir -r requirements.txt
|
|
|
|
COPY .env .
|
|
|
|
RUN apt update -y
|
|
RUN apt install -y cron locales
|
|
|
|
COPY *.py .
|
|
|
|
ENV PYTHONUNBUFFERED=1
|
|
ENV LANG=de_DE.UTF-8
|
|
ENV LC_ALL=de_DE.UTF-8
|
|
|
|
# Create cron job that runs every weekend (Sunday at 3 AM) 0 3 * * 0
|
|
# Testing every 30 Minutes */30 * * * *
|
|
RUN echo "0 3 * * 0 cd /app && /usr/local/bin/python main.py >> /proc/1/fd/1 2>&1" > /etc/cron.d/knack-transform
|
|
RUN chmod 0644 /etc/cron.d/knack-transform
|
|
RUN crontab /etc/cron.d/knack-transform
|
|
|
|
# Start cron in foreground
|
|
CMD ["cron", "-f"]
|
|
#CMD ["python", "main.py"]
|