selfhostedworld.com logoselfhostedworld.com

Try describing what you need:

Dagu logo

Dagu

★ 4.3k

A self-hosted alternative to Make Integromat

GNU General Public License v3.0Open Core — Some Features PaidSingle Container — single container — minimal hosting footprintDocker · K8s · Helm +3No external DB27+ active committers (12mo)

About

Dagu is a lightweight workflow orchestration tool designed as a self-contained alternative to systems like Airflow or cron. It targets users who want to define scheduled or event-driven automation in...

Community Ratings

No ratings yet

Features

  • declarative YAML DAGs
  • web UI
  • workflow retrying
  • workflow monitoring
  • shell command steps
  • Docker container steps
  • Kubernetes Job steps
  • SSH remote commands
  • MCP server
  • human approvals

Details

Last Updated
Oct 11, 2026
Created
Apr 22, 2022
Install Methods
dockerkuberneteshelmbinarypackage-managersource
Requirements
ReadWriteMany storage class for Helm-based Kubernetes install
Authentication
oidc-ssolocal
API
RESTWEBSOCKET
Backup & Export
file-backupdatabase-dump
Runtime / Stack
GoDocker
Privacy & Independence
Cloud: OptionalOffline Capable
User Model
Multi-UserMulti-Tenant
Deployment

Deployment: Docker Compose ✓Single Container — minimal hosting footprintsingle container

Run Dagu with Docker Compose

Compose file from the Dagu project repository.

1 service

no resource limits declared

needs persistent storage (3 volumes)

deploy/docker/compose.minimal.yaml · @ 4a192b1 · scanned Jul 9, 2026

services:
  dagu:
    image: ghcr.io/dagucloud/dagu:latest
    container_name: dagu-dev
    hostname: dagu-dev

    # Expose the web UI on localhost:8080
    ports:
      - "8080:8080"

    entrypoint: ["/usr/local/bin/tini", "-g", "--"] # Preserve PID 1 reaping while running as root for Docker in Docker (DinD) support

    # Default command: run all-in-one (server + scheduler + coordinator in-process)
    # You may override this at runtime, e.g.:
    #   docker compose -f compose.dev.yaml run --rm dagu dagu server
    command: ["dagu", "start-all"]

    # Recommended dev environment variables
    environment:
      # Frontend server
      - DAGU_HOST=0.0.0.0 # Bind inside container
      - DAGU_PORT=8080 # Web/UI port inside container
      - DAGU_DEBUG=true # More verbose logs during dev
      # Paths
      - DAGU_DAGS_DIR=/var/lib/dagu/dags
      # Builtin authentication (RBAC) - CHANGE TOKEN_SECRET IN PRODUCTION
      - DAGU_AUTH_MODE=builtin
      # Token secret: auto-generated if not set (persisted to {dataDir}/auth/token_secret)
      # - DAGU_AUTH_TOKEN_SECRET=your-secure-random-secret
      # First admin account created via /setup page on first browser visit
      # - DAGU_AUTH_TOKEN_TTL=24h        # default is 24h
      # Timezone / base path (optional)
      # - DAGU_TZ=UTC
      # - DAGU_BASE_PATH=/dagu
      # User and Group IDs (optional, for file permissions)
      # - PUID=1000 # optional. default is 1000
      # - PGID=1000 # optional. default is 1000

    # Dev-friendly mounts (persistent data + writable DAGs)
    volumes:
      - dagu-data:/var/lib/dagu
      - ./dags:/var/lib/dagu/dags
      # For Docker in Docker (DinD) support, mount the host Docker socket:
      - /var/run/docker.sock:/var/run/docker.sock

    # Quick command presets (uncomment any one to run specific component):
    # command: ["dagu", "server"]
    # command: ["dagu", "scheduler"]
    # command: ["dagu", "coordinator"]
    # command: ["dagu", "worker"]

    # Alternative: basic auth (simpler, no user management)
    # To use basic auth instead of builtin auth, comment out
    # DAGU_AUTH_MODE and DAGU_AUTH_TOKEN_SECRET above, then uncomment:
    # environment:
    #   - DAGU_AUTH_BASIC_USERNAME=dev
    #   - DAGU_AUTH_BASIC_PASSWORD=devpass

    user: "0:0" # Run as root for Docker in Docker (DinD) support

volumes:
  dagu-data:
    driver: local

This file may be out of date. Check the Dagu documentation for current setup steps.

Track your self-hosted stack

Bookmark software to try, rate tools you've used, and keep your collection in one place.

Metadata extracted from README on Jul 9, 2026

Related Software

Cronicle logo

Cronicle

5.9k
A multi-server task scheduler and runner with a web-based UI for scheduled, repeating, and on-demand jobs.
Automation ToolsTask RunnersScheduling and Bookings+2
Details
flowctl logo

flowctl

341
An open-source self-service workflow execution platform for running and managing complex workflows.
Task RunnersScheduling and BookingsSelf Hosting Solutions+3
4 Containers
Details
Cronmaster logo

Cronmaster

1.4k
A web-based cron manager for viewing, creating, cloning, and deleting cron jobs and scripts, with system information, logging, and authentication.
Automation ToolsTask RunnersScheduling and Bookings+3
Details
gocron logo

gocron

587
A Go and Vue.js task scheduler for defining recurring jobs in a YAML configuration file and running commands on cron schedules.
Automation ToolsPermissive LicenseTask Runners+2
Details
Ctfreak logo

Ctfreak

IT task scheduler with mobile-friendly web UI to schedule concurrent, remote and chained execution of Bash / Powershell / SQL scripts, Webhooks, and more.
Automation ToolsTask RunnersScheduling and Bookings+1
Details
Huginn logo

Huginn

50.0k
Huginn is a self-hosted automation system for building agents that monitor online events and perform actions on your behalf.
Automation ToolsPermissive LicenseAI Agents+3
4 Containers
Details
Apache Airflow logo

Apache Airflow

47.1k
Apache Airflow is a platform for programmatically authoring, scheduling, and monitoring workflows.
Automation ToolsPermissive LicenseTask Runners
Details
Kestra logo

Kestra

29.5k
Kestra is an open-source event-driven orchestration platform for building scheduled and real-time workflows with YAML and a web UI.
Automation ToolsTask RunnersPermissive License+1
Details
woodpecker logo

woodpecker

8.0k
Woodpecker is a simple, extensible CI/CD engine.
Automation ToolsTask RunnersSelf Hosting Solutions
2 Containers
Details
Trigger.dev logo

Trigger.dev

16.5k
An open-source platform for building and deploying AI workflows and agents in TypeScript.
Task RunnersArtificial IntelligenceAutomation Tools+4
Details
StackStorm logo

StackStorm

6.5k
StackStorm is a platform for event-driven integration and automation across services and tools.
Automation ToolsPermissive LicenseTask Runners
Details
OliveTin logo

OliveTin

3.8k
OliveTin provides safe and simple access to predefined shell commands through a web interface.
Automation ToolsCopyleft LicenseTask Runners+2
Details