Repolode
flohoss

flohoss/gocron

Самостоятельно размещаемый планировщик задач в стиле cron: задаёт повторяющиеся shell-команды в YAML и управляет запусками через веб-интерфейс.

Open source альтернатива:Windows Task Scheduler

Звёзды
627
Форки
23
Открытые issues
2
Последний коммит
15 дней назад

Что это?

GoCron запускает shell-команды по расписанию cron. Задачи, расписания, переменные окружения, таймауты и повторы задаются в одном YAML-файле. Изменения в файле подхватываются без перезапуска контейнера. Для каждой задачи создаётся отдельное окружение: в командах поддерживается подстановка ${VAR}, а значения задачи имеют приоритет над общими настройками по умолчанию.

В веб-интерфейсе на Vue.js можно просматривать задачи, запускать их вручную, читать логи и пользоваться терминалом в песочнице. История запусков и логи хранятся в SQLite, а вывод команд передаётся в браузер через Server-Sent Events. Дополнительные возможности включают HTTP-callback-проверки состояния при запуске, завершении и сбое задачи, ограничение частоты запросов по IP, поддержку доверенного обратного прокси и единую аутентификацию через OIDC.

При запуске Docker-образ может устанавливать распространённые инструменты для резервного копирования и работы с контейнерами, например restic, rclone, borgbackup и rsync, в образах на базе Debian.

Ключевые возможности

  • 01Задавайте задачи, расписания cron и переменные окружения в одном YAML-файле.
  • 02Стандартные 5-полевые выражения cron с наследованием настроек по умолчанию между задачами.
  • 03Таймауты и повторы для каждой команды с возможностью продолжать выполнение при сбое.
  • 04Веб-интерфейс для просмотра задач, запуска команд и чтения логов.
  • 05История запусков сохраняется в SQLite; срок хранения можно настроить.
  • 06HTTP-callback-проверки состояния при запуске, завершении и сбое задачи.
  • 07Необязательные единая аутентификация через OIDC и ограничение частоты запросов по IP.

Сценарии использования

  • Планирование ночного резервного копирования с помощью restic, rclone или borgbackup на Docker-хосте.
  • Запуск периодических скриптов обслуживания на домашнем сервере с просмотром логов в браузере.
  • Отправка heartbeat-запросов в систему мониторинга, чтобы пропущенные запуски вызывали оповещения.

Быстрый старт

  1. 1

    Запустите контейнер с помощью Docker (при первом запуске будет создана конфигурация по умолчанию)

    docker run -it --rm --name gocron -p 8156:8156 -v ./config/:/app/config/ ghcr.io/flohoss/gocron:latest
  2. 2

    Откройте в браузере http://localhost:8156, чтобы просмотреть задачи и журналы

  3. 3

    Или используйте Docker Compose с предоставленным описанием сервиса

Что важно знать

  • Установка программного обеспечения через блок software поддерживается только в Debian.

В подборках

Темы

Частые вопросы

Что такое gocron?
Самостоятельно размещаемый планировщик задач в стиле cron: задаёт повторяющиеся shell-команды в YAML и управляет запусками через веб-интерфейс. GoCron запускает shell-команды по расписанию cron. Задачи, расписания, переменные окружения, таймауты и повторы задаются в одном YAML-файле. Изменения в файле подхватываются без перезапуска контейнера. Для каждой задачи создаётся отдельное окружение: в командах поддерживается подстановка ${VAR}, а значения задачи имеют приоритет над общими настройками по умолчанию.
gocron можно использовать бесплатно? Какая у него лицензия?
gocron распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
gocron всё ещё поддерживается?
Активно поддерживается. Последний коммит в gocron — 23 окт. 2026 г..
Для чего можно использовать gocron?
Планирование ночного резервного копирования с помощью restic, rclone или borgbackup на Docker-хосте. Запуск периодических скриптов обслуживания на домашнем сервере с просмотром логов в браузере. Отправка heartbeat-запросов в систему мониторинга, чтобы пропущенные запуски вызывали оповещения.
Как установить gocron?
Запустите контейнер с помощью Docker (при первом запуске будет создана конфигурация по умолчанию): docker run -it --rm --name gocron -p 8156:8156 -v ./config/:/app/config/ ghcr.io/flohoss/gocron:latest Откройте в браузере http://localhost:8156, чтобы просмотреть задачи и журналы Или используйте Docker Compose с предоставленным описанием сервиса
Где скачать gocron?
Исходный код и инструкции по установке — на GitHub: https://github.com/flohoss/gocron

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Бесплатный self-hosted инструмент для резервного копирования PostgreSQL с Point-in-Time Recovery, автоматической проверкой восстановления и веб-интерфейсом.

DevOps и облака#backup#postgresql#database-backup
9,2 тыс.+26 за неделю605TypeScriptApache-2.0Активно поддерживаетсяОбновлён 15 часов назад

Самостоятельно размещаемый веб-архиватор, который сохраняет URL, закладки и ленты в HTML, PDF, виде скриншотов, WARC, медиафайлов и других долговечных форматов.

29 тыс.+66 за неделю1,6 тыс.PythonMITОбновлён 3 дня назад