Initial vault setup

This commit is contained in:
2026-06-09 18:40:21 +02:00
commit bda02d587f
3692 changed files with 402457 additions and 0 deletions
@@ -0,0 +1,135 @@
---
title: Compose Craft
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, docker, docker-compose, editeur, partage, typescript, auto-hebergement]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Docker, https://github.com/composecraft/composecraft]
---
# 🐳 Compose Craft
> **L'éditeur collaboratif de `docker-compose.yml`** : Compose Craft propose un éditeur visuel (drag & drop de services) et un mode texte avec validation, autocomplétion et templates prêts à l'emploi. Idéal pour les nouveaux venus à Docker Compose.
## 📋 Informations Générales
| Champ | Valeur |
| :--- | :--- |
| **Site web** | (GitHub) |
| **GitHub** | [composecraft/composecraft](https://github.com/composecraft/composecraft) |
| **License** | MIT |
| **Langage** | TypeScript / Svelte |
| **Étoiles GitHub** | 1023 ⭐ |
| **Dernière MAJ** | 2026-05-15 |
| **Catégorie** | [[cat-docker\|Docker]] |
## 📝 Description
**Compose Craft** est un **éditeur web de fichiers `docker-compose.yml`** avec deux modes complémentaires : un **mode texte** (Monaco Editor — le même que VS Code) avec validation YAML, autocomplétion des clés Compose, et un **mode visuel** où l'on drag & drop des services depuis un catalogue de templates. Le tout produit un `docker-compose.yml` valide, téléchargeable ou partageable via lien.
L'idée : combler le fossé entre « je ne connais rien à Compose, je copie-colle un template » et « je sais écrire un YAML à la main ». Compose Craft est **l'assistant qui aide à monter en compétence**, pas un outil de production.
-**Éditeur Monaco** : coloration syntaxique, validation, formatage (le même moteur que VS Code)
-**Mode visuel** : drag & drop de services depuis un catalogue, configuration par formulaires
-**Templates** : 200+ stacks prêts à l'emploi (Nextcloud, Jellyfin, Gitea, Vaultwarden, Immich…)
-**Validation** : indique en temps réel les erreurs de syntaxe, les champs requis manquants
-**Partage** : génère un lien partageable (encode le YAML en base64) — pratique pour demander de l'aide
-**Import** : colle un `docker-compose.yml` existant, l'UI le parse et le rend éditable
-**Export** : télécharge en `.yml`, en `.env` (variables d'env), ou copie dans le presse-papier
-**Schéma Compose à jour** : intègre la spécification Compose v2.x
**Compose Craft vs [[app-dockge|Dockge]]** : Dockge est un *gestionnaire de stacks* (déjà déployés) ; Compose Craft est un *éditeur de fichiers* (à déployer). Compose Craft vs **VS Code + extension Docker** : VS Code est plus puissant, mais demande d'installer une extension et de connaître la syntaxe. Compose Craft vs **composerize** (CLI) : composerize convertit une commande `docker run` en YAML ; Compose Craft fait le tour de propriétaire.
## 🚀 Installation
### Docker Compose (recommandé)
```yaml
# docker-compose.yml
version: '3.8'
services:
compose-craft:
image: ghcr.io/composecraft/composecraft:latest
container_name: compose-craft
restart: unless-stopped
ports:
- "3030:3000" # Web UI
environment:
- TZ=Europe/Paris
- PUBLIC_URL=https://compose.example.com
labels:
- "traefik.enable=true"
- "traefik.http.routers.compose-craft.rule=Host(`compose.example.com`)"
- "traefik.http.routers.compose-craft.entrypoints=websecure"
- "traefik.http.routers.compose-craft.tls.certresolver=letsencrypt"
```
> **Pas de socket Docker requis** : Compose Craft n'agit pas sur vos conteneurs, il *génère* des fichiers. C'est un outil de conception, pas d'exécution.
### Standalone (Node.js)
```bash
git clone https://github.com/composecraft/composecraft.git
cd composecraft && pnpm install && pnpm build
pnpm start
```
## ⚙️ Configuration Initiale
1. **Lancer Compose Craft** : `docker compose up -d`
2. **Accéder à l'UI** : `http://IP:3030` — aucune authentification par défaut, l'app ne touche pas au système
3. **Choisir un mode** : « Visual » pour les débutants, « Code » pour les confirmés
4. **Tester un template** : cliquer sur « Templates » > choisir « Nextcloud » > examiner le YAML généré
5. **Importer votre `docker-compose.yml` existant** : bouton « Import » > coller > l'UI le rend éditable
6. **Partager une stack** : cliquer sur « Share » > copier le lien > le destinataire ouvre la même stack dans son instance
7. **Exporter** : bouton « Download » > choisir `.yml` seul ou bundle complet avec `.env.example`
## 🔄 Alternatives
### Open Source
- **composerize / decomposerize** (CLI) — conversion `docker run``docker-compose.yml`
- **VS Code + extension Docker** — éditeur généraliste + extension
- [[app-dock-dploy|Dock-Dploy]] — éditeur visuel similaire
- **Portainer Stacks editor** — intégré à [[app-portainer|Portainer]]
- **Diagrams.net (draw.io) + plugin Docker** — schémas, pas de YAML
### Comparaison Compose Craft vs alternatives
| Critère | Compose Craft | composerize | VS Code | Dock-Dploy |
| :--- | :--- | :--- | :--- | :--- |
| Mode visuel | ✅ | ❌ | ❌ | ✅ |
| Mode code | ✅ (Monaco) | ❌ | ✅ | ❌ |
| Templates | 200+ | 0 (input only) | 0 | 50+ |
| Validation | ✅ | ❌ | ✅ (extension) | ✅ |
| Partage lien | ✅ | ❌ | ❌ (snippet) | ❌ |
| Setup | 2 min | 1 min | 10 min | 5 min |
**Verdict** : Compose Craft est **le meilleur outil pédagogique** pour apprendre Compose, et **un excellent partageur de stacks** (les liens partagés sont un killer feature). Pour de l'édition quotidienne en local, VS Code reste le must. Pour du « one-shot », Compose Craft est imbattable.
### Propriétaires (ce que Compose Craft remplace)
- **Cloud 66 Compose** (UI cloud, payant)
- **Portainer Business stack templates** (payant)
- **Divio Cloud** (orienté devs, payant)
- **AWS App Runner** (propriétaire, pas d'auto-hébergé)
## 🔐 Sécurité
-**Pas de socket Docker** : Compose Craft n'a **aucun accès** à votre système, c'est un outil isolé — c'est un gros avantage sécurité
- **Mode public** : si l'UI est exposée sur Internet, n'importe qui peut l'utiliser pour générer des stacks. Ce n'est pas un risque pour votre infra, mais cela consomme des ressources
- **Liens partagés** : le YAML est encodé en base64 dans l'URL, donc **non chiffré**. Ne partagez pas de stacks contenant des secrets (tokens, mots de passe)
- **Pas de persistance sensible** : Compose Craft ne stocke rien côté serveur (stateless)
## 📚 Ressources
- [GitHub composecraft/composecraft](https://github.com/composecraft/composecraft)
- [Démo en ligne](https://demo.composecraft.app/)
- [Galerie de templates](https://github.com/composecraft/composecraft/tree/main/templates)
## Pages Liées
- [[cat-docker]] — Catégorie Docker
- [[app-portainer]] / [[app-dockge]] / [[app-yacht]] — GUI Docker
- [[app-traefik]] — Reverse-proxy
- [[recettes-docker-compose]] — Compose files prêts à l'emploi
- [[securisation-home-lab]] — Bonnes pratiques