すでに動かしている運用自動化のためのセルフホスト型コントロールプレーン。

Daguは、スクリプト、cronジョブ、コンテナ、HTTPタスク、SQLジョブ、承認フローを、書き換えを強いずに1つの見えるワークフローシステムへまとめます。

dagu server --port 8080
dagu コマンドをインストール
$curl -fsSL https://raw.githubusercontent.com/dagucloud/dagu/main/scripts/installer.sh | bash

ガイド付きインストーラーは、DaguをPATHに追加し、バックグラウンドサービスを設定し、最初の管理者を作成するので、すぐにワークフローを実行できます。

非侵襲

SDK不要。ビジネスロジックはそのままです。

軽量

単一バイナリ、必須のデータベースやブローカーなし

コマンドネイティブ

スクリプト、コンテナ、SSHタスク、HTTP呼び出しを実行

エアギャップ対応

完全オフラインで動作。外部サービス不要。

workflow.yaml
# Existing scripts, now production workflows
name: "daily-ops"
schedule: "0 2 * * *"

steps:
- name: "backup-db"
command: "./scripts/backup-postgres.sh"
output: BACKUP_PATH

- name: "upload-backup"
command: "aws s3 cp $${BACKUP_PATH} s3://backups/"
depends: backup-db

- name: "notify"
type: http
depends: upload-backup

よく使うワークフローステップ

運用チームがDaguを選ぶ理由

標準でセルフホスト。既存の自動化はそのまま残ります。Daguはその周囲に監督性とオペレーター向け制御を加えます。

軽く運用できる

Daguは単一バイナリで、必須のデータベース、メッセージブローカー、コントロールプレーンスタックを必要としません。1台から始め、必要になったときだけワーカーを追加できます。

混在した運用自動化のために設計

スケジュール、依存関係、リトライ、キュー、パラメータ、シークレット、通知、SSHステップ、コンテナステップ、SQLジョブ、分散実行を読みやすいYAMLで扱えます。

書き換えなしで移行

スクリプト、サービス、SQL、コンテナ、運用コマンドはそのままです。DaguはコードベースにフレームワークやSDKを押し込むのではなく、その周囲をオーケストレーションします。

最初からオペレーターに見える

すべての実行にステータス、ログ、履歴、タイミング、視覚的なワークフロー表示が付き、ジョブがcrontabやサーバーログに埋もれなくなります。

デプロイメントモデル

Dagu はローカル、セルフホスト、マネージドサーバー、Cloud 運用と private execution を組み合わせる hybrid 構成で実行できます。

1 台から始めて、セルフホスト、マネージド、Hybrid へ拡張できます。

ローカル

単一サーバー

`dagu start-all` を 1 台のマシンで実行し、状態はローカルファイルに保存します。database、broker、platform stack は不要です。

セルフホスト

自社インフラ

Dagu server、workers、secrets、logs、execution を自社環境内に置けます。

Dagu Cloud

フルマネージドサーバー

Dagu Cloud が GKE 上の isolated gVisor instance で運用する dedicated Dagu server を使えます。

ハイブリッド

マネージドサーバー + プライベート実行

Dagu Cloud が server を運用し、private workers が Docker、private-network、data-local steps を実行します。

Hybrid execution

Managed Dagu server
mTLS で接続する private worker
Docker、private APIs、secrets、data-local work

Hybrid では Dagu server の運用を任せながら、network、runtime、data が必要な execution は自社管理下に残せます。

分断された自動化を置き換える前に確認すべきこと

チームは、散在したジョブを1つのコントロールプレーンへ移す前に、スループット、キュー、復旧、ガバナンス、APIアクセス、ワーカー実行を確認します。

数千/日

単一ノードのスループット

ハードウェア、ワークフローの形、ステップ時間、キュー設定に応じて、1台のマシンで1日に数千のワークフロー実行を扱えます。

キュー + ワーカー

実行を安全にスケール

キュー、同時実行制限、分散ワーカーを使って負荷を制御し、ジョブを複数マシンへ分散できます。

Catchup + retry

スケジュール済み作業を復旧

Cronスケジュール、catchup、durable automatic retry、timeouts、reruns、イベントハンドラスクリプト、メール通知で失敗を扱いやすくします。

Users + API

チームで運用

ユーザー管理、RBAC、workspaces、承認、シークレット、REST API、CLI、webhooksで共有の本番ワークフローを運用できます。

ユースケース

スクリプト、cronジョブ、アドホックな作業として始まり、その後に人が実行して追跡できるワークフローシステムが必要になる運用作業の実践的な索引です。

運用ユースケース

Daguは、運用作業がすでにコマンド、スクリプト、コンテナ、SQLジョブ、HTTPタスク、リモートサーバーにまたがって存在し、その後に、より明確なスケジュール、リトライ、可観測性、管理方法を必要とするチームに向いています。

既存のコマンドはそのまま。そこに可視性、リトライ、承認、実行履歴を加えます。

01

/ 見えないcron作業

Cronとレガシースクリプト管理

既存のシェルスクリプト、Pythonスクリプト、HTTP呼び出し、スケジュールジョブを、書き換えずにDaguへ取り込めます。

見えにくいcron群が、ログ、依存関係、履歴、オペレーター制御を備えた、見える・リトライ可能なワークフローになります。

ワークフローはエンジニアに十分具体的で、オペレーターに十分見えるままです。

02

保守しやすい日次ジョブ

ETLとデータ運用

PostgreSQLやSQLiteのクエリ、S3転送、jq変換、検証ステップ、再利用可能なサブワークフローを実行できます。

日次データワークフローを宣言的かつ観測可能に保ち、1つのステップが失敗してもリトライしやすくなります。

03

分散メディア処理

メディア変換

ffmpeg、サムネイル抽出、音声正規化、画像処理などの重いジョブをワーカーに分散して実行できます。

変換処理は分散ワーカーで実行しつつ、ステータス、履歴、ログ、成果物を1つの永続化レイヤーに保持でき、監視、デバッグ、リトライがしやすくなります。

04

スケジュールされたリモートジョブ

インフラとサーバー自動化

SSHバックアップ、クリーンアップ、デプロイスクリプト、パッチ作業、事前条件チェック、ライフサイクルフックを調整できます。

復旧のたびにサーバーへSSHしなくても、リモート運用にスケジュール、リトライ、通知、ステップごとのログを持たせられます。

05

コンテナネイティブなパイプライン

コンテナとKubernetesワークフロー

各ステップでDockerイメージ、Kubernetes Job、シェルコマンド、検証ステップを実行するワークフローを構成できます。

コンテナ周りに独自の制御プレーンを作らず、イメージベースのタスクを適切なワーカーへルーティングできます。

06

非エンジニア向け運用

カスタマーサポート自動化

診断、アカウント修復、データ確認、承認付きサポート作業をシンプルなWeb UIから実行できます。

非エンジニアはレビュー済みワークフローを運用でき、エンジニアはコマンド、ログ、結果を追跡可能な状態に保てます。

07

小さなデバイスでも見える実行

IoTとエッジワークフロー

小型デバイスでセンサー取得、ローカルクリーンアップ、オフライン同期、ヘルスチェック、保守ジョブを実行できます。

単一バイナリとファイルベースの状態管理はエッジデバイスでも扱いやすく、Web UIで可視性も確保できます。

08

任意で使えるAI支援運用

AIエージェントワークフロー

モデル支援が有効な場面で、AIコーディングエージェント、エージェントCLI、エージェント作成のYAMLワークフロー、ログ分析、修復ステップ、人間がレビューする自動化を実行できます。

AIはワークフロー内の補助機能にとどまり、すべてを実行する主体にはなりません。

共通点

プレーンYAML任意のコマンドDockerとKubernetes JobSSHスケジュールリトライログ通知

一般的なワークフローパターン

スクリプト、スケジュールジョブ、サーバータスク、制御された自動化を1つのワークフローエンジンにまとめます。

Health Check
SSH Backup
Notify

スクリプトワークフロー

既存のシェルスクリプト、Dockerコマンド、SSHタスク、HTTP呼び出しを信頼性の高いワークフローに変えます。

  • 1既存のスクリプトやコマンドをそのまま使う
  • 2コンテナ、SSHタスク、HTTPステップを1つのDAGで実行
  • 3壊れやすいコマンド連鎖ではなく依存関係を使う
  • 4失敗したステップを明確なログと履歴付きでリトライ
workflow.yaml
steps:
  - name: health-check
    command: curl -sf http://app:8080/health

  - name: backup
    type: ssh
    config:
      host: db-server
      user: admin
    command: pg_dump mydb > /backups/daily.sql

  - name: notify
    type: http
    config:
      url: "https://hooks.slack.com/..."
      method: POST
    body: '{"text": "Backup complete"}'

Slack & Telegram 向け Workflow Operator

Slack と Telegram 向けの継続コンテキストを持つ AI オペレーター。失敗をデバッグし、操作を承認し、会話を離れずにインシデントから復旧できます。

DaguDagu
メッセージ...

実運用のためのワークフローエンジン機能

Daguは、既存の処理の周囲に必要な本番レイヤーに集中します: スケジュール、依存関係、リトライ、ログ、キュー、制御された実行。

クイックスタートガイド

ガイド付きインストーラーで Dagu を入れたら、詳しいインストールガイドやクイックスタートに進めます。

1

dagu コマンドをインストール

最も簡単なのはスクリプトインストーラーです。Homebrew、npm、Docker も使えますが、そちらはバイナリまたはコンテナの導入のみです。

Mac/Linux ターミナル
$curl -fsSL https://raw.githubusercontent.com/dagucloud/dagu/main/scripts/installer.sh | bash
✓ ガイド付きインストーラーを開始
2

次のステップ

ガイド付きインストーラーが初回セットアップをそのまま完了できます。

# インストーラーでできること
Dagu を PATH に追加
バックグラウンドサービスを設定
最初の管理者を作成して確認

プロジェクトコミュニティ

使い方の相談、Issue の報告、開発状況の確認ができます。