Hoppa till innehåll
100% lokalt

docker-compose till Kubernetes manifest

Konvertera docker-compose-tjänster till produktionsklara Kubernetes Deployment- och Service-manifest.

Inmatning
Utmatning

docker-compose till Kubernetes manifest

Klistra in en docker-compose.yml-fil och det här verktyget konverterar varje tjänst till produktionsfärdiga Kubernetes-manifest: en Deployment och, när tjänsten publicerar en port, en motsvarande Service. Det är byggt för utvecklare som flyttar en Compose-baserad stack till ett kluster, skapar ett Helm-diagram för hand eller bara vill ha ett första YAML-utkast istället för att skriva varje fält från början.

Ang en namespace och gemensamma etiketter som ska stämplas på alla genererade resurser, och välj hur många repliker varje Deployment ska köra. Portar konverteras till en ClusterIP- eller NodePort-Service beroende på vad du väljer, miljövariabler blir en ConfigMap eller Secret, och volymer blir en PersistentVolumeClaim eller emptyDir – beroende på hur du planerar att köra arbetsbelastningen. Slå på readiness- och liveness-kontroller för att lägga till en grundläggande TCP-kontroll mot behållarens första port, och slå på Ingress-generering för att exponera portbärande tjänster utanför klustret.

Composes cpu- och minnesgränser under deploy.resources översätts till Kubernetes' eget kvantitetsformat – 0,5 cpus blir 500m, 512M blir 512Mi – och varje genererad pod-mall får restartPolicy: Always, det enda värdet som en Deployment accepterar. En tjänst utan bild, portar eller volymer producerar fortfarande en minimal Deployment. En fil utan top-level services:-avsnitt eller YAML som misslyckas att analysera returnerar ett tydligt fel som namnger raden istället för ett tomt resultat.

Allt körs i din webbläsare: din compose-fil lämnar aldrig din enhet, så det är säkert att klistra in produktionskonfiguration. Kopiera de genererade manifesten, ladda ned dem som en .txt-fil eller skicka utmatningen direkt tillbaka till inmatningen för att fortsätta förfina namespace, etiketter eller replikantal.

FAQ

Stöder det Composes långa syntax för portar och volymer?
Ja. Tillsammans med korta strängar som "8080:80" eller "data:/var/lib/data" läses även portar och volymer skrivna som mappningar (target, published, source).
Varför får varje pod restartPolicy: Always?
En Deployment pod-mall accepterar bara detta värde – en kontroller, inte containerkörtiden, bestämmer hur man reagerar på en misslyckad behållare, så Composes egen restart-inställning kan inte överföras en-till-en.
Kan det generera en Ingress för en tjänst utan port?
Nej. Service- och Ingress-manifest skapas endast för tjänster som publicerar minst en port i Compose, eftersom det annars inte finns något att dirigera trafik till.
Vad händer med minnes- och CPU-gränser?
Composes deploy.resources-block konverteras till Kubernetes' kvantitetsformat: decimala CPU-värden blir millikärnor (0,5 → 500m) och minnesenheter som M eller G blir Mi eller Gi.
Laddas min docker-compose-fil upp någonstans?
Nej. Konvertering sker helt i din webbläsare – din compose-fil och dess innehål lämnar aldrig din enhet.