Dagu
Dagu is a self-contained workflow engine with a Web UI. Schedule and orchestrate jobs as DAGs defined in declarative YAML, with no DBMS required.
Configuration
# Access the Dagu Web UI at the assigned domain.
# Sign in with the basic auth credentials from your .env file (default user: admin).
# Place your DAG definitions (YAML) in the dags directory via the Web UI or the API.
version: "3.8"
services:
dagu:
image: ghcr.io/dagucloud/dagu:2.10.7
command: dagu start-all
restart: unless-stopped
expose:
- 8080
volumes:
- dagu-data:/var/lib/dagu
environment:
# Dagu binds to 127.0.0.1 by default; 0.0.0.0 is required to reach it
- DAGU_HOST=0.0.0.0
- DAGU_PORT=8080
- DAGU_AUTH_MODE=basic
- DAGU_AUTH_BASIC_USERNAME=${ADMIN_USERNAME}
- DAGU_AUTH_BASIC_PASSWORD=${ADMIN_PASSWORD}
volumes:
dagu-data: {}[variables]
main_domain = "${domain}"
admin_password = "${password:32}"
[config]
mounts = []
[[config.domains]]
serviceName = "dagu"
port = 8080
host = "${main_domain}"
[config.env]
ADMIN_USERNAME = "admin"
ADMIN_PASSWORD = "${admin_password}"Base64
To import this template in Dokploy: create a Compose service → Advanced → Base64 import and paste the content below:
ewogICJjb21wb3NlIjogIiMgQWNjZXNzIHRoZSBEYWd1IFdlYiBVSSBhdCB0aGUgYXNzaWduZWQgZG9tYWluLlxuIyBTaWduIGluIHdpdGggdGhlIGJhc2ljIGF1dGggY3JlZGVudGlhbHMgZnJvbSB5b3VyIC5lbnYgZmlsZSAoZGVmYXVsdCB1c2VyOiBhZG1pbikuXG4jIFBsYWNlIHlvdXIgREFHIGRlZmluaXRpb25zIChZQU1MKSBpbiB0aGUgZGFncyBkaXJlY3RvcnkgdmlhIHRoZSBXZWIgVUkgb3IgdGhlIEFQSS5cblxudmVyc2lvbjogXCIzLjhcIlxuXG5zZXJ2aWNlczpcbiAgZGFndTpcbiAgICBpbWFnZTogZ2hjci5pby9kYWd1Y2xvdWQvZGFndToyLjEwLjdcbiAgICBjb21tYW5kOiBkYWd1IHN0YXJ0LWFsbFxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgZXhwb3NlOlxuICAgICAgLSA4MDgwXG4gICAgdm9sdW1lczpcbiAgICAgIC0gZGFndS1kYXRhOi92YXIvbGliL2RhZ3VcbiAgICBlbnZpcm9ubWVudDpcbiAgICAgICMgRGFndSBiaW5kcyB0byAxMjcuMC4wLjEgYnkgZGVmYXVsdDsgMC4wLjAuMCBpcyByZXF1aXJlZCB0byByZWFjaCBpdFxuICAgICAgLSBEQUdVX0hPU1Q9MC4wLjAuMFxuICAgICAgLSBEQUdVX1BPUlQ9ODA4MFxuICAgICAgLSBEQUdVX0FVVEhfTU9ERT1iYXNpY1xuICAgICAgLSBEQUdVX0FVVEhfQkFTSUNfVVNFUk5BTUU9JHtBRE1JTl9VU0VSTkFNRX1cbiAgICAgIC0gREFHVV9BVVRIX0JBU0lDX1BBU1NXT1JEPSR7QURNSU5fUEFTU1dPUkR9XG5cbnZvbHVtZXM6XG4gIGRhZ3UtZGF0YToge31cbiIsCiAgImNvbmZpZyI6ICJbdmFyaWFibGVzXVxubWFpbl9kb21haW4gPSBcIiR7ZG9tYWlufVwiXG5hZG1pbl9wYXNzd29yZCA9IFwiJHtwYXNzd29yZDozMn1cIlxuXG5bY29uZmlnXVxubW91bnRzID0gW11cblxuW1tjb25maWcuZG9tYWluc11dXG5zZXJ2aWNlTmFtZSA9IFwiZGFndVwiXG5wb3J0ID0gODA4MFxuaG9zdCA9IFwiJHttYWluX2RvbWFpbn1cIlxuXG5bY29uZmlnLmVudl1cbkFETUlOX1VTRVJOQU1FID0gXCJhZG1pblwiXG5BRE1JTl9QQVNTV09SRCA9IFwiJHthZG1pbl9wYXNzd29yZH1cIlxuIgp9Links
Tags
workflow, automation, scheduler, cron, devops
Version: 2.10.7