--- title: Komodo created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, docker, container, orchestration, multi-server, deploy, monitoring-docker] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Docker, https://github.com/moghtech/komodo] --- # 🐳 Komodo > **L'orchestrateur Docker multi-serveurs en Rust** — dĂ©ployez et supervisez vos stacks sur N hĂŽtes depuis une interface unique. ## 📋 Informations GĂ©nĂ©rales | Champ | Valeur | | :--- | :--- | | **Site web** | [komo.do](https://komo.do/) | | **GitHub** | [moghtech/komodo](https://github.com/moghtech/komodo) | | **License** | GPL-3.0 (custom-ish : core AGPL, libs permissives) | | **Langage** | Rust (backend) + TypeScript (UI) | | **Étoiles GitHub** | 11,3k ⭐ | | **DerniĂšre MAJ** | 2026-06-06 | | **CatĂ©gorie** | [[cat-docker\|Docker]] | ## 📝 Description **Komodo** est une **plateforme d'orchestration et de dĂ©ploiement** Ă©crite en Rust, conçue pour gĂ©rer des **stacks docker-compose sur plusieurs serveurs** depuis une interface web unique. LĂ  oĂč [[app-portainer]] nĂ©cessite un *agent* par hĂŽte, Komodo utilise un binaire **`komodod`** dĂ©ployĂ© sur chaque serveur cible, qui communique avec le serveur central via une API REST/WebSocket sĂ©curisĂ©e. Le rĂ©sultat : un seul *dashboard* pour superviser 1, 3 ou 30 serveurs, dĂ©ployer une stack sur l'un, l'autre, ou tous, et recevoir des alertes unifiĂ©es. IdĂ©al pour les homelabs multi-machines (Raspberry Pi + NAS + serveur Proxmox
) ou les petites Ă©quipes d'ops. - ✅ **Multi-serveurs** (illimitĂ©) depuis une seule UI - ✅ **Stacks docker-compose** dĂ©ployables par groupe de serveurs (*batch deploy*) - ✅ **ProcĂ©dures custom** (scripts shell) exĂ©cutables Ă  distance - ✅ **Resources monitoring** (CPU/RAM/Disk/Net par serveur) - ✅ **Alertes** : CPU Ă©levĂ©, disk full, conteneurs down, MAJ dispos - ✅ **Gestion des secrets** (variables chiffrĂ©es au repos) - ✅ **RBAC** (utilisateurs, groupes, permissions fines) - ✅ **Audit log** (qui a fait quoi, quand) - ✅ **Builds Docker** Ă  distance (depuis un repo git) - ✅ **Webhooks** (dĂ©clenchement Git push, CI, etc.) - ✅ **Single binary** (`komodod` en Go-like Rust), faible empreinte **Public cible** : **homelabs avancĂ©s multi-machines** et **petites Ă©quipes DevOps** qui veulent un Portainer-like mais en mieux, ou un alternative moderne Ă  Ansible Tower. **Alternatives directes** : [[app-portainer]] (rĂ©fĂ©rence, plus mature), [[app-dockge]] (mono-serveur, plus simple), [[app-arcane]] (mono-serveur, moderne), **Ansible** / **Terraform** (IaC, plus bas niveau). ## 🚀 Installation ### Architecture - **`komodo-core`** : API centrale + UI (1 conteneur / 1 binaire) - **`komodo-periphery`** : agent lĂ©ger Ă  installer sur **chaque serveur distant** ### Option 1 : Docker Compose (serveur central) ```yaml # docker-compose.yml — serveur central version: '3.8' services: komodo: image: ghcr.io/moghtech/komodo:1.18.0 container_name: komodo restart: unless-stopped security_opt: - no-new-privileges:true ports: - "9120:9120" # web UI - "8120:8120" # API REST volumes: - komodo_data:/data labels: - "traefik.enable=true" - "traefik.http.routers.komodo.rule=Host(`komodo.example.com`)" - "traefik.http.routers.komodo.entrypoints=websecure" - "traefik.http.routers.komodo.tls.certresolver=letsencrypt" - "traefik.http.services.komodo.loadbalancer.server.port=9120" volumes: komodo_data: ``` ### Option 2 : Agent sur chaque serveur distant ```bash # Sur CHAQUE serveur Ă  manager curl -fsSL https://raw.githubusercontent.com/moghtech/komodo/main/scripts/setup-periphery | bash # Édite /etc/komodo/periphery.config.toml : # - ip = "0.0.0.0" # - port = 8120 # - komodo_url = "https://komodo.example.com" # le serveur central # - api_key = "..." # gĂ©nĂ©rĂ© cĂŽtĂ© Komodo sudo systemctl restart komodo-periphery ``` > Le serveur central peut aussi ĂȘtre lui-mĂȘme un *periphery* (self-managed). ## ⚙ Configuration Initiale 1. **AccĂ©der Ă  l'UI** : `https://komodo.example.com:9120` (ou via Traefik) 2. **CrĂ©er le compte admin** et gĂ©nĂ©rer une **API key** 3. **Ajouter un serveur** : *Servers > New* > IP, port, clĂ© API du `komodod` distant 4. **CrĂ©er un premier dĂ©ploiement** : *Stacks > New* > chemin vers le `compose.yaml` 5. **Lier la stack Ă  un ou plusieurs serveurs** (sĂ©lection multiple possible) 6. **Configurer les alertes** : *Alerts > New* (Discord, Telegram, email, webhook
) ## 🔄 Alternatives ### Open Source - [[app-portainer]] — RĂ©fĂ©rence, mature, K8s/Swarm support - [[app-dockge]] — Mono-serveur, plus simple - [[app-arcane]] — Mono-serveur, UI Svelte moderne - **Ansible AWX** — Plus gĂ©nĂ©rique, plus complexe - **Coolify** — PaaS self-hosted (app store + deploy) - **Dokku** — Mini-Heroku sur un serveur - **CasaOS** — Plus qu'un orchestrateur ### PropriĂ©taires - **Portainer Business** — SSO, RBAC, support commercial - **Rancher** (SUSE) — Enterprise K8s - **Octopus Deploy** — CD enterprise - **Spacelift** — IaC orchestration - **Harness** — CI/CD + deployment ### Tableau comparatif | CritĂšre | Komodo | Portainer CE | Dockge | Ansible AWX | Coolify | | :--- | :--- | :--- | :--- | :--- | :--- | | Multi-serveur | ✅ (natif) | ✅ (agent) | ❌ | ✅ | ✅ | | K8s | ❌ | ✅ | ❌ | ❌ | ❌ | | RBAC | ✅ | Basique | ❌ | ✅ | ✅ | | App store | ❌ | ✅ (templates) | ❌ | ❌ | ✅ | | Build distant | ✅ | ❌ | ❌ | ✅ | ✅ | | Langage | Rust | Go | TypeScript | Python | TypeScript | | Licence | GPL-3.0 | Zlib (CE) | MIT | Apache-2.0 | Apache-2.0 | **Verdict** : **Komodo brille en multi-serveurs** avec une UX moderne. Pour un homelab mono-machine, [[app-dockge]] ou [[app-arcane]] sont plus simples. Pour du K8s, [[app-portainer]] reste le choix sĂ»r. ## 🔐 SĂ©curitĂ© - ⚠ **Le serveur central Komodo contrĂŽle N agents** = **surface d'attaque multipliĂ©e**. Compromettre Komodo = compromis tous les serveurs enregistrĂ©s. - **Auth obligatoire + 2FA** activĂ©e sur le compte admin. - **TLS partout** : [[app-traefik]] avec Let's Encrypt pour l'UI ; `komodod` distant accessible uniquement via WireGuard/Tailscale/VPN. - **Tokens API scoped** : ne jamais rĂ©utiliser la mĂȘme clĂ© pour tous les serveurs. - **Secrets Komodo chiffrĂ©s** au repos avec une *passphrase* — la sauvegarder dans un coffre (Bitwarden, KeePass). - **RBAC strict** : si plusieurs utilisateurs, limiter les permissions par groupe. ## 📚 Ressources - [GitHub moghtech/komodo](https://github.com/moghtech/komodo) - [Site officiel](https://komo.do/) - [Documentation](https://komo.do/docs) - [DĂ©mo live](https://demo.komo.do/) ## Pages LiĂ©es - [[cat-docker]] — CatĂ©gorie Docker - [[app-portainer]] — RĂ©fĂ©rence, plus mature - [[app-dockge]] — Alternative mono-serveur - [[app-traefik]] — Reverse proxy - [[recettes-docker-compose]] — Templates Compose - [[securisation-home-lab]] — Durcir l'infra