Repolode
flohoss

flohoss/gocron

YAML로 반복 실행할 셸 작업을 정의하고 웹 UI로 관리하는 셀프 호스팅 cron 스타일 작업 스케줄러입니다.

대체할 수 있는 제품:Windows Task Scheduler

스타
627
포크
23
열린 이슈
2
마지막 커밋
16일 전

어떤 프로젝트인가요?

GoCron은 cron 일정에 따라 셸 명령을 실행합니다. 작업, 일정, 환경 변수, 타임아웃, 재시도 설정을 YAML 파일 하나에 선언하며, 컨테이너를 재시작하지 않아도 파일의 변경 사항이 적용됩니다. 각 작업은 독립된 환경을 사용하고, 명령에서 ${VAR}를 확장하며 작업별 값이 공통 기본값보다 우선합니다.

Vue.js로 만든 웹 UI에서 작업을 확인하고, 수동으로 실행을 시작하고, 로그를 읽고, 샌드박스 터미널을 사용할 수 있습니다. 실행 이력과 로그는 SQLite에 저장되며, 실행 출력은 Server-Sent Events를 통해 브라우저로 스트리밍됩니다. 선택 기능으로는 작업 시작·종료·실패 시 HTTP 상태 확인 콜백, IP별 요청 제한, 신뢰할 수 있는 역방향 프록시 처리, OIDC 싱글 사인온이 있습니다.

Docker 이미지는 Debian 기반 이미지에서 시작할 때 restic, rclone, borgbackup, rsync 같은 일반적인 백업 및 컨테이너 도구를 설치할 수 있습니다.

핵심 기능

  • 01작업, cron 일정, 환경 변수를 YAML 파일 하나에서 정의합니다.
  • 02작업 전체에 기본값을 상속할 수 있는 표준 5필드 cron 표현식을 지원합니다.
  • 03명령별 타임아웃과 재시도를 설정하고, 선택적으로 실패 후에도 계속 실행할 수 있습니다.
  • 04작업 확인, 실행 시작, 로그 열람을 위한 웹 UI를 제공합니다.
  • 05설정 가능한 보존 기간에 따라 실행 이력을 SQLite에 저장합니다.
  • 06작업 시작·종료·실패 시 HTTP 상태 확인 콜백을 지원합니다.
  • 07선택 기능으로 OIDC 싱글 사인온과 IP별 요청 제한을 제공합니다.

활용 사례

  • Docker 호스트에서 restic, rclone 또는 borgbackup을 사용해 야간 백업을 예약합니다.
  • 브라우저에서 로그를 확인하면서 홈 서버에서 정기 유지보수 스크립트를 실행합니다.
  • 모니터링 서비스에 하트비트 핑을 보내 실행 누락 시 알림을 받습니다.

빠른 시작

  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은(는) 무엇인가요?
YAML로 반복 실행할 셸 작업을 정의하고 웹 UI로 관리하는 셀프 호스팅 cron 스타일 작업 스케줄러입니다. GoCron은 cron 일정에 따라 셸 명령을 실행합니다. 작업, 일정, 환경 변수, 타임아웃, 재시도 설정을 YAML 파일 하나에 선언하며, 컨테이너를 재시작하지 않아도 파일의 변경 사항이 적용됩니다. 각 작업은 독립된 환경을 사용하고, 명령에서 ${VAR}를 확장하며 작업별 값이 공통 기본값보다 우선합니다.
gocron은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
gocron은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
gocron은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. gocron의 마지막 커밋은 2026년 10월 23일입니다.
gocron은(는) 어디에 사용할 수 있나요?
Docker 호스트에서 restic, rclone 또는 borgbackup을 사용해 야간 백업을 예약합니다. 브라우저에서 로그를 확인하면서 홈 서버에서 정기 유지보수 스크립트를 실행합니다. 모니터링 서비스에 하트비트 핑을 보내 실행 누락 시 알림을 받습니다.
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를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트

URL, 북마크, 피드를 HTML, PDF, 스크린샷, WARC, 미디어 등 오래 보존할 수 있는 일반 형식으로 저장하는 셀프 호스팅 웹 아카이버입니다.

생산성·앱#web-archiving#self-hosted#backup
2.9만+61 이번 주1.6천PythonMIT업데이트 4시간 전