---
title: "Deploy Dagu Official"
description: "Official Dagu template: local-first workflow orchestrator with a web UI"
category: "Automation"
url: https://railway.com/deploy/dagu-official
---

# Deploy Dagu Official

Official Dagu template: local-first workflow orchestrator with a web UI

**[Deploy Dagu Official on Railway](https://railway.com/template/dagu-official)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/dagu-official/manifest.json

- **Creator:** YotaHamada's Projects
- **Category:** Automation

## Template content

### dagu https://raw.githubusercontent.com/dagucloud/dagu/main/assets/images/brand-mark.png

- **Image:** ghcr.io/dagucloud/dagu:latest
- **Health check:** /api/v1/health
- **Public domain:** Yes

## Documentation

# Deploy and Host Dagu on Railway

Dagu is a local-first workflow orchestrator. Workflows are YAML DAGs, and one binary runs the web UI, API, scheduler, and executors. Runtime state is stored in files, so no database or message broker is required. This is the official template maintained by the Dagu project.

## About Hosting Dagu

This template runs the official `ghcr.io/dagucloud/dagu` image, which starts the web UI, API, and scheduler in one service. A Railway volume mounted at `/var/lib/dagu` keeps DAG definitions, run history, and logs across redeploys. Built-in authentication is enabled, and the first admin account is created from a generated password stored in the service variables. Keep the service at one replica, because the volume and the scheduler belong to a single instance. Railway mounts volumes as root, so the template runs Dagu as root to write to it.

## Common Use Cases

- Scheduled data pipelines and ETL jobs defined as YAML DAGs
- Operational automation such as backups, reports, cleanup scripts, and health checks
- Multi-step jobs with dependencies, retries, approvals, and notifications

## Dependencies for Dagu Hosting

- The official Docker image `ghcr.io/dagucloud/dagu:latest`
- A Railway volume mounted at `/var/lib/dagu`

### Implementation Details

After the deploy finishes, open the generated domain and sign in as `admin`. The password is the value of `DAGU_AUTH_BUILTIN_INITIAL_ADMIN_PASSWORD` in the service variables. It is used only when no users exist, so change the password in the Dagu UI afterwards. For production, pin a versioned image tag instead of `latest`.

- Documentation: https://docs.dagu.sh
- Railway guide: https://docs.dagu.sh/server-admin/deployment/cloud/railway
- Source code: https://github.com/dagucloud/dagu

## Why Deploy Dagu on Railway?


Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying Dagu on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.


## Similar templates

- [N8N Main + Worker](https://railway.com/deploy/n8n-main-worker) — Deploy and Host N8N with Inactive worker.
- [Evolution API with n8n](https://railway.com/deploy/evolution-api-with-n8n) — Automate WhatsApp workflows with Evolution API, n8n, and Postgres.
- [Postgres Backup](https://railway.com/deploy/postgres-s3-backups) — Cron-based PostgreSQL backup to bucket storage

Open this page in a browser: https://railway.com/deploy/dagu-official
