Přeskočit na obsah
100% lokálně

docker-compose do Kubernetes manifestu

Konvertujte služby docker-compose na manifesty Kubernetes Deployment a Service.

Vstup
Výstup

docker-compose do Kubernetes manifestu

Vložte soubor docker-compose.yml a tento nástroj konvertuje každou službu na připravené manifesty Kubernetes: Deployment a, když služba zveřejňuje port, odpovídající Service. Byl vytvořen pro vývojáře, kteří přesunují stack založený na Compose do clusteru, vytváří Helm chart ručně nebo prostě chtějí první průchod YAML místo psaní každého pole od začátku.

Nastavte jmenný prostor a společné štítky, které se připevní na všechny vygenerované zdroje, a vyberte si, kolik replik má každé Deployment spouštět. Porty se konvertují na ClusterIP nebo NodePort Service podle toho, co vyberete, proměnné prostředí se stanou ConfigMap nebo Secret a svazky se stanou PersistentVolumeClaim nebo emptyDir — podle toho, jak plánujete spouštět úlohu. Zapněte sondy připravenosti a živosti, abyste přidali základní TCP kontrolu proti prvnímu portu kontejneru, a zapněte generování Ingress, abyste zveřejnili služby s porty mimo cluster.

Limity CPU a paměti z sekce deploy.resources v Compose se přeloží do vlastního formátu Kubernetes — 0,5 cpus se změní na 500m, 512M se změní na 512Mi — a každá vygenerovaná šablona podu dostane restartPolicy: Always, jedinou hodnotu, kterou Deployment akceptuje. Služba bez obrázku, portů nebo svazků stále vytvoří minimální Deployment. Soubor bez sekce top-level services: nebo YAML, který se nepodařilo analyzovat, vrátí jasnou chybu s názvem řádku místo prázdného výsledku.

Všechno se spouští v tvém prohlížeči: soubor compose nikdy neopustí tvoje zařízení, takže je bezpečné vložit produkční konfiguraci. Zkopírujte vygenerované manifesty, stáhněte si je jako soubor .txt nebo pošlete výstup přímo zpět na vstup, abyste pokračovali v doladění jmenného prostoru, štítků nebo počtu replik.

Časté dotazy

Podporuje dlouhou syntaxi Compose pro porty a svazky?
Ano. Vedle krátkých řetězců jako "8080:80" nebo "data:/var/lib/data" se také čtou porty a svazky zapsané jako mapování (target, published, source).
Proč má každý pod restartPolicy: Always?
Šablona podu Deployment akceptuje pouze tuto hodnotu — kontrolér, ne samotný runtime kontejneru, rozhoduje, jak reagovat na selhání kontejneru, takže nastavení restart Compose nemůže být přeneseno one-to-one.
Může vytvořit Ingress pro službu bez portu?
Ne. Manifesty Service a Ingress se vytváří pouze pro služby, které zveřejňují alespoň jeden port v Compose, protože není co směrovat jinak.
Co se stane s limity paměti a CPU?
Blok deploy.resources Compose se konvertuje na množství prostředků Kubernetes: desítková hodnota CPU se změní na milicore (0,5 → 500m) a jednotky paměti jako M nebo G se změní na Mi nebo Gi.
Je můj soubor docker-compose někde nahravan?
Ne. Konverze se spouští zcela v tvém prohlížeči — tvůj soubor compose a jeho obsah nikdy neopustí tvoje zařízení.