|
|
|
|
@ -1,41 +1,10 @@
|
|
|
|
|
# Cronicle Docker
|
|
|
|
|
|
|
|
|
|
 
|
|
|
|
|
 
|
|
|
|
|
|
|
|
|
|
Dockerised Cronicle, based on the [Cronicle-Edge](https://github.com/cronicle-edge/cronicle-edge) fork of [Cronicle](https://github.com/jhuckaby/Cronicle). This container was built to include features I value in containers, namely logging to `stdout` and configurable `PUID` and `PGID`.
|
|
|
|
|
Dockerised Cronicle, based on the [Cronicle-Edge](https://github.com/cronicle-edge/cronicle-edge) fork.
|
|
|
|
|
|
|
|
|
|
This container can function in both the **manager** and **worker** role.
|
|
|
|
|
|
|
|
|
|
## Links
|
|
|
|
|
- :tea: [Gitea Repo (source)](https://git.mrmeeb.stream/MrMeeb/cronicle-docker)
|
|
|
|
|
- :whale2: [Containers](https://git.mrmeeb.stream/MrMeeb/-/packages/container/cronicle/latest) - since I'm currently not also publishing them to ghcr.io
|
|
|
|
|
- :mirror: [GitHub mirror](https://github.com/MrMeeb/cronicle-docker)
|
|
|
|
|
- :package: [Cronicle Repo](https://github.com/jhuckaby/Cronicle)
|
|
|
|
|
- :package: [Cronicle-Edge Repo](https://github.com/cronicle-edge/cronicle-edge)
|
|
|
|
|
|
|
|
|
|
*This repo is mirrored to GitHub*
|
|
|
|
|
|
|
|
|
|
## Overview
|
|
|
|
|
|
|
|
|
|
[**Cronicle**](https://github.com/jhuckaby/Cronicle) is a multi-server task scheduler and runner, with a web based front-end UI. It handles both scheduled, repeating and on-demand jobs, targeting any number of worker servers, with real-time stats and live log viewer. It's basically a fancy [Cron](https://en.wikipedia.org/wiki/Cron) replacement written in [Node.js](https://nodejs.org/). You can give it simple shell commands, or write Plugins in virtually any language.
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
## Features at a Glance
|
|
|
|
|
|
|
|
|
|
* Single or multi-server setup.
|
|
|
|
|
* Automated failover to backup servers.
|
|
|
|
|
* Auto-discovery of nearby servers.
|
|
|
|
|
* Real-time job status with live log viewer.
|
|
|
|
|
* Plugins can be written in any language.
|
|
|
|
|
* Schedule events in multiple timezones.
|
|
|
|
|
* Optionally queue up long-running events.
|
|
|
|
|
* Track CPU and memory usage for each job.
|
|
|
|
|
* Historical stats with performance graphs.
|
|
|
|
|
* Simple JSON messaging system for Plugins.
|
|
|
|
|
* Web hooks for external notification systems.
|
|
|
|
|
* Simple REST API for scheduling and running events.
|
|
|
|
|
* API Keys for authenticating remote apps.
|
|
|
|
|
Can function in both the **manager** and **worker** role.
|
|
|
|
|
|
|
|
|
|
## Tags
|
|
|
|
|
|
|
|
|
|
@ -50,9 +19,9 @@ Tags relating to releases are also available, for locking in on a specific versi
|
|
|
|
|
|
|
|
|
|
`config.json`, located in `/config/cronicle/conf/config.json`, is automatically generated on the first run of Cronicle in 'manager' mode. This file must be kept identical between the manager and any workers it controls.
|
|
|
|
|
|
|
|
|
|
If you want to configure Cronicle before first run (e.g to use a different storage engine), download `config_sample.json` and adjust accordingly before placing in `/config/cronicle/conf/config.json`. Make sure to change the `secret`!
|
|
|
|
|
If you want to configure Cronicle before first run (e.g to use a different storage engine), download `config_sample.json` and adjust accordingly before placing in `/config/cronicle/conf/config.json`.
|
|
|
|
|
|
|
|
|
|
:exclamation: You must define the hostname of the container. Cronicle expects the hostname to remain the same, so the randomly-generated container hostname can cause problems if it changes. :exclamation:
|
|
|
|
|
:exclamation: NOTE: You must define the hostname of the container. Cronicle expects the hostname to remain the same, so the randomly-generated container hostname can cause problems if it changes. :exclamation:
|
|
|
|
|
|
|
|
|
|
### Docker CLI
|
|
|
|
|
```
|
|
|
|
|
@ -111,4 +80,3 @@ This container automatically checks for scripts in `/config/init` and runs them
|
|
|
|
|
|PUID |int |1000 |Sets the UID of the user Cronicle runs under
|
|
|
|
|
|PGID |int |1000 |Sets the GID of the user Cronicle runs under
|
|
|
|
|
|TZ |[List of valid TZs](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) |UTC |Sets the timezone of the container and by extension Cronicle
|
|
|
|
|
|LOG_LEVEL|1-10 |9 |Sets log level from `1` (quietest) to `10` (loudest)|
|
|
|
|
|
|