145 lines
5.3 KiB
Markdown
145 lines
5.3 KiB
Markdown
---
|
|
title: Dockman
|
|
created: 2026-06-07
|
|
updated: 2026-06-07
|
|
type: app
|
|
tags: [catalogue, docker, compose, editeur, templates, go]
|
|
confidence: high
|
|
contested: false
|
|
sources: [https://selfh.st/apps/?tag=Docker, https://github.com/RA341/dockman]
|
|
---
|
|
|
|
# 🐳 Dockman
|
|
|
|
> **L'éditeur web de docker-compose.yml avec templates** : composez vos stacks visuellement, sauvegardez en versionné (git), déployez en un clic. L'IDE pour vos fichiers Compose.
|
|
|
|
## 📋 Informations Générales
|
|
|
|
| Champ | Valeur |
|
|
| :--- | :--- |
|
|
| **Site web** | (GitHub) |
|
|
| **GitHub** | [RA341/dockman](https://github.com/RA341/dockman) |
|
|
| **License** | MIT |
|
|
| **Langage** | Go (backend) + frontend moderne |
|
|
| **Étoiles GitHub** | 623 ⭐ |
|
|
| **Dernière MAJ** | 2026-05 |
|
|
| **Catégorie** | [[cat-docker\|Docker]] |
|
|
|
|
## 📝 Description
|
|
|
|
**Dockman** est un **éditeur web spécialisé** pour fichiers `docker-compose.yml`. Il combine trois choses que les autres outils séparent : (1) **édition syntaxique** avec coloration et validation, (2) **templates prêts à l'emploi** (Nextcloud, Jellyfin, Vaultwarden, etc.) cliquables, (3) **intégration git** pour versionner vos stacks.
|
|
|
|
- ✅ **Éditeur Monaco** (le même que VS Code) avec coloration YAML
|
|
- ✅ **Validation** de la syntaxe `compose-spec` en direct
|
|
- ✅ **Templates pré-configurés** : 30+ stacks populaires
|
|
- ✅ **Auto-complétion** sur les champs `image`, `volumes`, `environment`
|
|
- ✅ **Git intégré** : commit/push depuis l'UI
|
|
- ✅ **Pull & redeploy** en un clic
|
|
- ✅ **Variables d'environnement** globales (`.env` centralisé)
|
|
- ✅ **Multi-hôtes** (expérimental)
|
|
- ✅ **Binaire Go** : image Docker légère (~30 Mo)
|
|
- ✅ **MIT** : auditable
|
|
|
|
**Public cible** : développeurs et homelabbers qui **éditent souvent** leurs `docker-compose.yml` mais qui trouvent `vim`/`nano` trop austères ou `VS Code` trop lourd. Excellent pour les **équipes** qui veulent partager des stacks via Git.
|
|
|
|
**Différence avec [[app-dockge]]** : Dockge gère des stacks déjà écrites et orchestre leur cycle de vie. **Dockman** est un **éditeur visuel** : vous tapez du YAML, il vous aide. Les deux sont **complémentaires**.
|
|
|
|
## 🚀 Installation
|
|
|
|
### Docker Compose
|
|
|
|
```yaml
|
|
# docker-compose.yml
|
|
version: '3.8'
|
|
services:
|
|
dockman:
|
|
image: ghcr.io/ra341/dockman:latest
|
|
container_name: dockman
|
|
restart: unless-stopped
|
|
environment:
|
|
- DOCKMAN_PORT=8866
|
|
- DOCKMAN_DIR=/dockman
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro # optionnel : pour redeploy
|
|
- dockman-data:/dockman
|
|
- /opt/stacks:/opt/stacks # vos stacks à éditer
|
|
ports:
|
|
- "8866:8866"
|
|
|
|
volumes:
|
|
dockman-data:
|
|
```
|
|
|
|
### Docker run
|
|
|
|
```bash
|
|
docker run -d \
|
|
--name dockman \
|
|
-p 8866:8866 \
|
|
-v /var/run/docker.sock:/var/run/docker.sock:ro \
|
|
-v /opt/stacks:/opt/stacks \
|
|
-v dockman-data:/dockman \
|
|
ghcr.io/ra341/dockman:latest
|
|
```
|
|
|
|
## ⚙️ Configuration Initiale
|
|
|
|
1. **Accéder à l'UI** : `http://IP:8866`
|
|
2. **Créer un compte admin** au premier démarrage
|
|
3. **Monter le dossier** contenant vos `docker-compose.yml` (ex: `/opt/stacks`)
|
|
4. **Choisir un template** : Templates > New > *Nextcloud* par exemple
|
|
5. **Personnaliser** les variables (domaines, volumes, ports)
|
|
6. **Sauvegarder** et **déployer** (si le socket Docker est monté)
|
|
|
|
## 🔄 Alternatives
|
|
|
|
### Open Source
|
|
|
|
- [[app-compose-craft]] — Concurrent direct, plus d'options de partage
|
|
- [[app-dock-dploy]] — Constructeur visuel *drag & drop* de Compose
|
|
- [[app-dockge]] — Orchestrateur de stacks existantes
|
|
- **VS Code + extension Docker** — Plus puissant, mais local
|
|
- **Portainer** — Éditeur basique intégré, pas de templates
|
|
|
|
### Comparaison Dockman vs alternatives
|
|
|
|
| Critère | Dockman | Compose Craft | Dock-Dploy | Dockge |
|
|
| :--- | :--- | :--- | :--- | :--- |
|
|
| Édition | Monaco/YAML | YAML | Drag & drop | YAML basique |
|
|
| Templates | ✅ 30+ | ✅ 20+ | ❌ | ❌ |
|
|
| Git intégré | ✅ | ✅ | ❌ | ❌ |
|
|
| Visuel (no-code) | ❌ | ❌ | ✅ | ❌ |
|
|
| Orchestration | ✅ (si socket) | ❌ | ❌ | ✅ |
|
|
| Multi-hôte | Expérimental | ❌ | ❌ | ❌ |
|
|
| License | MIT | MIT | MIT | MIT |
|
|
|
|
**Verdict** : Dockman est **le meilleur compromis** entre puissance d'édition et simplicité pour un homelabber qui maîtrise déjà Compose. Pour du no-code, [[app-dock-dploy]]. Pour orchestrer sans éditer, [[app-dockge]].
|
|
|
|
### Propriétaires (ce que Dockman remplace)
|
|
|
|
- **Cloud 9 / AWS CloudShell** — Beaucoup plus lourd
|
|
- **GitHub Codespaces** — Payant et public
|
|
- **TextEditor en ligne + SSH** — Lentes, fastidieuses
|
|
|
|
## 🔐 Sécurité
|
|
|
|
- ⚠️ **Montage du socket Docker = root effectif** : qui contrôle Dockman contrôle la machine. **N'exposez jamais** l'UI sans auth + HTTPS, et idéalement **ne montez pas le socket** si vous n'avez besoin que d'éditer (volume read-only : `:ro`)
|
|
- **HTTPS obligatoire** via [[app-traefik]]
|
|
- **Rate-limiting** sur l'UI pour éviter le brute-force
|
|
- **Mises à jour régulières** : le projet est jeune, surveillez les CVE
|
|
|
|
## 📚 Ressources
|
|
|
|
- [GitHub RA341/dockman](https://github.com/RA341/dockman)
|
|
- [Démo en ligne](https://dockman-demo.ra341.dev)
|
|
|
|
## Pages Liées
|
|
|
|
- [[cat-docker]] — Catégorie Docker
|
|
- [[app-portainer]] — Runtime Docker
|
|
- [[app-dockge]] — Orchestrateur stacks
|
|
- [[app-yacht]] — Templates
|
|
- [[app-traefik]] — Reverse proxy
|
|
- [[recettes-docker-compose]] — Stacks
|
|
- [[securisation-home-lab]] — Sécurité
|