A crontab-compatible job runner designed specifically for container environments.
Supercronic is a crontab-compatible job runner specifically designed for container environments. It solves the problems traditional cron implementations have in containers by preserving environment variables, logging to stdout/stderr, and handling container signals gracefully. It allows developers to run scheduled tasks in Docker and Kubernetes environments using familiar cron syntax.
Developers and DevOps engineers running scheduled jobs in containerized environments, particularly those using Docker or Kubernetes who need reliable cron functionality.
Developers choose Supercronic because it's specifically built for containers—it works predictably with container lifecycle management, preserves environment configuration, and provides better logging than traditional cron implementations.
Cron for containers
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Preserves environment variables, logs to stdout/stderr, and handles SIGTERM/SIGINT gracefully for proper container lifecycle management, as detailed in the README's 'Why Supercronic?' section.
Uses the cronexpr package to support second-level cron syntax, extending standard crontab compatibility for more granular job timing, mentioned in the 'Crontab format' section.
Provides detailed logs showing job execution, schedules, and return codes with examples in the 'Logging' section, making troubleshooting straightforward.
Supports reloading crontab via SIGUSR2 or file watching with the -inotify flag, allowing dynamic updates without container restarts, as explained in the 'Reload crontab' section.
Does not support changing users when running tasks, as admitted in the README, limiting use in scenarios requiring different security contexts per job.
Overriding timezones requires installing tzdata for custom configurations, adding an extra step that might complicate minimal container setups, noted in the 'Timezone' section.
Focuses on basic cron functionality without built-in job retries, queues, or distributed scheduling, which could be insufficient for complex workflow needs.