79 lines
2.4 KiB
Markdown
79 lines
2.4 KiB
Markdown
---
|
|
title: Dagu
|
|
created: 2026-06-08
|
|
updated: 2026-06-08
|
|
type: app
|
|
tags: [catalogue, task-scheduling, app-marathon3-rattrapage-final-a]
|
|
confidence: medium
|
|
contested: false
|
|
sources: [https://selfh.st/apps/?tag=Task%20Scheduling&app=dagu]
|
|
---
|
|
|
|
# 🔀 Dagu
|
|
|
|
> Définition de workflows sous forme de DAG YAML — alternative légère à Airflow, écrite en Go.
|
|
|
|
## 📋 Informations Générales
|
|
|
|
| Champ | Valeur |
|
|
| :--- | :--- |
|
|
| **Site web** | [dagu.cloud](https://dagu.cloud) |
|
|
| **GitHub** | [dagu-org/dagu](https://github.com/dagu-org/dagu) |
|
|
| **License** | GPL-3.0 |
|
|
| **Langage** | Go |
|
|
| **Étoiles GitHub** | ~2k ⭐ |
|
|
| **Catégorie** | [[cat-task-scheduling\|Task Scheduling]] |
|
|
|
|
## 📝 Description
|
|
|
|
**Dagu** permet de décrire des chaînes de tâches (DAG — Directed Acyclic Graph) en YAML, avec dépendances, conditions, retries, parallélisme. UI web pour visualiser l'état, lancer/rejouer, voir les logs. Binaire Go unique, base SQLite par défaut, support de fichiers distants S3/GCS.
|
|
|
|
Différence vs Airflow : Dagu = **un seul binaire** (vs stack Python lourde), syntaxe YAML (vs Python DAG), pas de scheduler externalisé. Pour qui : petites équipes qui veulent de l'orchestration sans la complexité d'Airflow.
|
|
|
|
## 🚀 Installation
|
|
|
|
### Docker Compose (recommandé)
|
|
|
|
```yaml
|
|
version: '3.8'
|
|
services:
|
|
dagu:
|
|
image: ghcr.io/dagu-org/dagu:latest
|
|
container_name: dagu
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8080:8080"
|
|
volumes:
|
|
- ./dags:/home/dagu/dags
|
|
- ./data:/home/dagu/data
|
|
labels:
|
|
traefik.enable: "true"
|
|
traefik.http.routers.dagu.rule: "Host(`dagu.example.com`)"
|
|
```
|
|
|
|
## 🔄 Alternatives
|
|
|
|
### Open Source
|
|
- [[app-cronicle]] — Planificateur multi-node
|
|
- [[app-gocron]] — Scheduler Go
|
|
- **Apache Airflow** — Référence DAG Python
|
|
|
|
### Propriétaires
|
|
- **Prefect Cloud** — Orchestration SaaS
|
|
- **Dagster Cloud** — Data orchestration
|
|
|
|
## 🔐 Sécurité
|
|
- **Auth** : basic auth ou OIDC (config)
|
|
- **API** : tokens pour triggers webhook
|
|
- **DAGs** : fichiers YAML validés avant exécution
|
|
- **Logs** : rotation automatique, attention à la sensibilité
|
|
|
|
## 📚 Ressources
|
|
- [Site officiel](https://dagu.cloud)
|
|
- [GitHub](https://github.com/dagu-org/dagu)
|
|
|
|
## Pages Liées
|
|
- [[cat-task-scheduling]] — Catégorie Task Scheduling
|
|
- [[app-cronicle]] — Concurrent multi-node
|
|
- [[recettes-docker-compose]] — Templates Docker
|