Kompose
| Fiche express | |
|---|---|
| Type | Convertisseur docker-compose.yml → manifestes Kubernetes
|
| Statut | Sous-projet Kubernetes, point de départ de migration (pas un déploiement clé en main) |
| Voir aussi | Helm · Kustomize |
Kompose traduit un fichier docker-compose.yml en un ensemble d'objets Kubernetes équivalents : chaque service devient un Deployment (ou un Pod) et un Service associé, les volumes déclarés deviennent des PersistentVolumeClaims, et certaines directives (ports exposés, variables d'environnement) sont reprises telles quelles. L'outil s'adresse aux équipes qui disposent déjà d'une définition Compose fonctionnelle — typiquement pour du développement local — et veulent obtenir un premier jeu de manifestes Kubernetes sans les écrire entièrement à la main.
Usage
# Convertir un docker-compose.yml en manifestes YAML (un fichier par objet, par défaut)
kompose convert -f docker-compose.yml
# Convertir et appliquer directement au cluster courant (usage expérimental)
kompose up -f docker-compose.yml
Limites à connaître
La conversion reste mécanique et ne comble pas les écarts conceptuels entre les deux modèles : un fichier Compose ne décrit ni requests/limits de ressources, ni liveness/readiness probes, ni security context, ni règles d'Ingress — autant d'éléments que Kompose ne peut pas deviner et que les manifestes générés n'incluent donc pas. Le résultat de kompose convert doit être considéré comme un point de départ à revoir, pas comme un livrable prêt pour la production : compléter les probes, dimensionner les ressources, et généralement passer les manifestes obtenus par Kustomize (pour les décliner par environnement) ou les intégrer dans un chart Helm (si l'application doit être redistribuée ou versionnée comme un paquet) reste l'étape suivante logique.