Agendador e executor de tarefas para vários servidores, com interface web, apresentado como uma alternativa mais completa ao Cron.
flohoss/gocron
Agendador de tarefas no estilo cron e self-hosted, que define comandos recorrentes de shell em YAML e gerencia as execuções por uma interface web.
Alternativa open source a:Windows Task Scheduler
- Estrelas
- 627
- Forks
- 23
- Issues abertas
- 2
- Último commit
- há 16 dias
O que é?
O GoCron executa comandos de shell em horários definidos por cron. Os jobs, seus agendamentos, variáveis de ambiente, timeouts e novas tentativas são declarados em um único arquivo YAML, e as alterações nesse arquivo são aplicadas sem reiniciar o container. Cada job tem seu próprio ambiente, com expansão de ${VAR} nos comandos e valores por job que prevalecem sobre os padrões compartilhados.
A interface web, feita com Vue.js, permite visualizar jobs, iniciar execuções manualmente, ler logs e usar um terminal isolado. O histórico de execuções e os logs são armazenados em SQLite, e a saída das execuções é transmitida ao navegador por Server-Sent Events. Os recursos opcionais incluem callbacks HTTP de verificação de integridade no início, no fim e em caso de falha do job, limitação de taxa por IP, suporte a proxy reverso confiável e single sign-on com OIDC.
A imagem Docker pode instalar, na inicialização e em imagens baseadas em Debian, ferramentas comuns de backup e container, como restic, rclone, borgbackup e rsync.
Recursos principais
- 01Defina jobs, agendamentos cron e variáveis de ambiente em um único arquivo YAML.
- 02Expressões cron padrão de 5 campos, com herança de valores padrão entre jobs.
- 03Timeouts e novas tentativas por comando, com opção para continuar em caso de falha.
- 04Interface web para visualizar jobs, iniciar execuções e ler logs.
- 05Histórico de execuções persistido em SQLite, com retenção configurável.
- 06Callbacks HTTP de verificação de integridade no início, no fim e em caso de falha do job.
- 07Single sign-on opcional com OIDC e limitação de taxa por IP.
Casos de uso
- Agendar backups noturnos com restic, rclone ou borgbackup em um host Docker.
- Executar scripts periódicos de manutenção em um servidor doméstico e consultar logs pelo navegador.
- Enviar pings de heartbeat para um serviço de monitoramento, para que execuções perdidas gerem alertas.
Início rápido
- 1
Execute o contêiner com Docker (uma configuração padrão é criada na primeira inicialização)
docker run -it --rm --name gocron -p 8156:8156 -v ./config/:/app/config/ ghcr.io/flohoss/gocron:latest - 2
Abra http://localhost:8156 no navegador para ver as tarefas e os logs
- 3
Ou use o Docker Compose com a definição de serviço fornecida
Antes de usar
- A instalação de software pelo bloco software está disponível somente no Debian.
Em coleções
Tópicos
Perguntas frequentes
- O que é gocron?
- Agendador de tarefas no estilo cron e self-hosted, que define comandos recorrentes de shell em YAML e gerencia as execuções por uma interface web. O GoCron executa comandos de shell em horários definidos por cron. Os jobs, seus agendamentos, variáveis de ambiente, timeouts e novas tentativas são declarados em um único arquivo YAML, e as alterações nesse arquivo são aplicadas sem reiniciar o container. Cada job tem seu próprio ambiente, com expansão de ${VAR} nos comandos e valores por job que prevalecem sobre os padrões compartilhados.
- gocron é gratuito? Qual é a licença?
- gocron é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- gocron ainda é mantido?
- Manutenção ativa. O último commit de gocron foi em 23 de out. de 2026.
- Para que posso usar gocron?
- Agendar backups noturnos com restic, rclone ou borgbackup em um host Docker. Executar scripts periódicos de manutenção em um servidor doméstico e consultar logs pelo navegador. Enviar pings de heartbeat para um serviço de monitoramento, para que execuções perdidas gerem alertas.
- Como instalar gocron?
- Execute o contêiner com Docker (uma configuração padrão é criada na primeira inicialização): docker run -it --rm --name gocron -p 8156:8156 -v ./config/:/app/config/ ghcr.io/flohoss/gocron:latest Abra http://localhost:8156 no navegador para ver as tarefas e os logs Ou use o Docker Compose com a definição de serviço fornecida
- Onde consigo gocron?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/flohoss/gocron
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Painel web self-hosted para agendar e gerenciar tarefas cron escritas em Python3, JavaScript, Shell ou TypeScript.
Interface web para gerenciar cron jobs com agendamentos fáceis de entender, logs em tempo real e histórico de execução por job.
Ferramenta gratuita e auto-hospedada para backup do PostgreSQL, com Point-in-Time Recovery, verificação automática de restauração e interface web.
Aplicação web self-hosted para agendar, executar, monitorar e restaurar backups do PostgreSQL em disco local ou buckets S3.
Arquivador da web auto-hospedado que salva URLs, favoritos e feeds em formatos simples e duráveis, como HTML, PDF, capturas de tela, WARC e mídia.