INT 21h

Hi, I am Vladimir Smagin, SysAdmin, DevOps and barely good guy. Telegram Email / GIT / Микроблог / Thingiverse / GPG

Cron inside your Docker image with python app

№ 9577 В разделе "Администрирование" от November 25th, 2018,

At first, create your cron file with usual crontab lines and name it mycrontab_lines

*/5 * * * * /app/cron_script.sh

Now create your cron_script.sh

#!/bin/bash
# load env variables
source /etc/profile
. ~/.profile

python3 /app/mycronapp.py

Ok, you ready now to create Dockerfile like this:

FROM python:3

# install cron service
RUN    apt-get ${APT_FLAGS_COMMON} update && \
    apt-get ${APT_FLAGS_PERSISTENT} -y install cron && \
    apt-get ${APT_FLAGS_COMMON} autoremove && \
    apt-get ${APT_FLAGS_COMMON} clean && \
    rm -rf /var/lib/apt/lists/*

# bla bla bla copy app.py
WORKDIR /app

COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt

# install python app
COPY app.py .
COPY mycronapp.py .

# make cron
COPY mycrontab_lines .
COPY cron_script.sh .
RUN chmod 0755 run_previewer.sh
RUN chmod 0644 mycrontab_lines
RUN crontab mycrontab_lines

# start cron service before start blocking application
CMD service cron start && \
    python ./app.py

Build and run container.

Нет комментариев »

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Микроблог перейти

# 2019-10-16 16:22:41

#docker hub опять разъебало, самое время снова задуматься поднять локальный кеш образов docs.docker.com/registry/recip а поскольку принудительный pull образов еще никто не отменял можно создать целое локальное зеркало образов чтобы зависеть от хаба как можно меньше. #devops #linux

# 2019-10-16 16:07:39

Уже попользовался частью этих ништяков systemd для ограничения памяти и процессорного времени для софтины habr.com/ru/post/270165/ когда-нибудь я про это вам расскажу #devops #linux #systemd

# 2019-10-16 15:20:49

Невероятно крутая штука для бэкапа и восстановления #postgres с хранением в S3 совместимом хранилище github.com/wal-g/wal-g #devops


© Vladimir Smagin, 2005-2019. Копирование материалов без разрешения запрещено. GPG DA4CD0F5E222EA727D6A40C413BCE12E5618F071 *
Яндекс.Метрика

Fortune cookie: I'm using my X-RAY VISION to obtain a rare glimpse of the INNER WORKINGS of this POTATO!!