Simple scheduling for short-running Docker containers
5.3K
Simple scheduling for short-running Docker containers
Dockron requires access to the Docker, so it may need to be run as root, or, if in a Docker container, need the socket mapped as a volume.
As simple as:
dockron
It will then run in the foreground, periodically checking Docker for containers with labels containing a cron schedule.
By default, Dockron will periodically poll Docker for new containers or schedule changes every minute. You can specify an interval by using the -watch flag.
Dockron is also available as a Docker image. The multi-arch repo can be found at IamTheFij/dockron
From either an amd64, arm, or arm64 machine, you can run Dockron using:
docker run -v /var/run/docker.sock:/var/run/docker.sock:ro iamthefij/dockron -watch
First, be sure your container is something that is not long running and will actually exit when complete. This is for batch runs and not keeping a service running. Docker should be able to do that on it's own with a restart policy.
Create your container and add a label in the form dockron.schedule="* * * * *", where the value is a valid cron expression (See the section Cron Expression Formatting).
Dockron will now start that container peridically on the schedule.
For more information on the cron expression parsing, see the docs for robfig/cron.
Dockron is quite simple right now. It does not yet:
I intend to keep it simple as well. It will likely never:
Either use a separate tool in conjunction with Dockron, or use a more robust scheduler like Tron, or Chronos.
Content type
Image
Digest
sha256:92c9d88dc…
Size
5.1 MB
Last updated
about 2 years ago
docker pull iamthefij/dockron