29 lines
670 B
Docker
29 lines
670 B
Docker
# Use a lightweight Python base image
|
|
FROM python:3.13-slim-bookworm
|
|
|
|
# Set the working directory in the container
|
|
WORKDIR /app
|
|
|
|
# Install uv and dependencies
|
|
COPY pyproject.toml ./
|
|
RUN apt-get update && apt-get install -y cron \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
RUN pip install uv && uv sync
|
|
|
|
# Copy the application code
|
|
COPY szuru-eink.py ./
|
|
COPY epd/ ./epd/
|
|
|
|
# Copy the cron job script and crontab file
|
|
COPY cron_job.sh /usr/local/bin/cron_job.sh
|
|
COPY crontab /etc/cron.d/szuru-eink-cron
|
|
|
|
# Give execution rights on the cron job script
|
|
RUN chmod +x /usr/local/bin/cron_job.sh
|
|
|
|
# Apply cron job
|
|
RUN crontab /etc/cron.d/szuru-eink-cron
|
|
|
|
# Run cron
|
|
CMD ["cron", "-f"]
|