[DOCKER] Simplify cron (#1184)
Drastically simplifies setting up cron within ytdl-sub. Below is the documentation which is available in readthedocs, and a section on how to migrate from the old way to this.
New Cron Documentation
Cron is preconfigured in every ytdl-sub docker container. Enable by adding the following ENV variables to your docker setup.
services:
ytdl-sub:
environment:
- CRON_SCHEDULE="0 */6 * * *"
- CRON_RUN_ON_START=false
- CRON_SCHEDULE follows the standard cron scheduling syntax. The above value will run the script once every 6 hours.
- CRON_RUN_ON_START toggles whether to run your cron script on container start.
The cron script will reside in the main directory with the file name cron
. Cron logs should show when viewing the Docker logs.
Migrating Existing Cron Setup
Containers' cron files will remain intact until you add the CRON_SCHEDULE
variable. Once you add that with your preferred schedule, it will write that value to /config/crontabs/abc and create a new file cron
within your working directory. Simply copy everything from your existing run_cron
script into cron
.
If you have the ENV variable DOCKER_MODS
in your docker-compose, remove it. It is now included by default. Not removing this will prevent cron logs from showing in your docker container logs.