Asparagus is an open source task scheduler with no external dependencies. It's useful for executing scheduled tasks on any environment.
We recommend using Asparagus with our pre-built Docker image. Start Asparagus using:
# Crontab Backend
docker pull fkconsultin/asparagus
docker run \
--rm -ti \
-v $(pwd)/example:/app \
-e ASPARAGUS_SCHEDULER_PROVIDER_CRONTAB_SOURCE=/app/crontab \
fkconsultin/asparagus
------------------- ----------------------
| Source Provider | \ / | Execution Provider |
------------------- \ / ----------------------
> - - - Asparagus Scheduler - - - <
------------------- / | \ ----------------------
| Source Provider | / | \ | Execution Provider |
------------------- | ----------------------
---------------------
| Metrics Reporting |
---------------------
Source Providers provide configuration and crontab settings to asparagus.
Asparagus uses the configured Execution Provider to execute the actual cronjob
on the target system.
Configuration is done using environment variables or a central config file. You can generate a sample configuration file by using the following command:
docker run --rm -ti fkconsultin/asparagus config > conf/asparagus.conf
Now you can start your asparagus instance using the provided volume: /etc/asparagus using the asparagus.conf filename:
docker run --rm -ti -v $(pwd)/conf:/etc/asparagus fkconsultin/asparagus
Alternatively you can use prefixed environment variables for each configuration variable, like so:
ASPARAGUS_<SECTION>_<KEY>=<VALUE>
Read the annotated documentation if you want to find out more: here
Source providers define where cronjobs can be discovered. To find out more read this article.
Execution providers execute whatever was defined inside a cronjob. To find out more read this article.
If you're feeling adventurous and want to contribute to Aspragus, see our contributing doc for info on how to make feature requests, build from source, and run tests.
Content type
Image
Digest
Size
11.4 MB
Last updated
almost 8 years ago
docker pull fkconsultin/aspagarus