Preskoči na vsebino
100% lokalno

docker-compose v Kubernetes manifest

Pretvori docker-compose storitve v Kubernetes Deployment in Service manifeste.

Vhod
Izhod

docker-compose v Kubernetes manifest

Prilepite datoteko docker-compose.yml in to orodje pretvori vsako storitev v Kubernetes manifeste, ki so pripravljeni za uporabo: Deployment in, kadar storitev objavlja vrata, ujemajočo se Service. Namenjena je razvojnikom, ki premikajo Compose stack na gruču, ročno ustvarjajo Helm chart ali samo potrebujejo prvi pogled na YAML namesto pisanja vsakega polja od začetka.

Nastavite namespace in skupne oznake, ki se bodo uporabile na vsakem generirannem viru, in izberite, koliko replik bi moral vsak Deployment zagnati. Vrata se pretvorijo v ClusterIP ali NodePort Service v odvisnosti od tega, kaj izberete, spremenljivke okolja postanejo ConfigMap ali Secret, zvezki pa postanejo PersistentVolumeClaim ali emptyDir — odvisno od tega, kako načrtujete zagnati delovnem bremenu. Vklopite readiness in liveness preverke, da dodate osnovno TCP preverjanje na prvem portu kontejnerja, in vklopite Ingress generiranje, da izpostavljate storitve, ki nosijo vrata, zunaj gruče.

Compose-ove cpus in memory omejitve pod deploy.resources se pretvorijo v Kubernetes lastne količine — 0,5 cpus postane 500m, 512M postane 512Mi — in vsak generirani pod template dobi restartPolicy: Always, edina vrednost, ki jo Deployment sprejme. Storitev brez slike, vrat ali zvezkov še vedno proizvede minimalni Deployment. Datoteka brez top-level services: razdelka ali YAML, ki se ne da razčleniti, vrne jasno napako z navedbo vrstice namesto praznega rezultata.

Vse se izvršava v vašem brskalniku: datoteka docker-compose nikoli ne zapusti vaše naprave, zato je varno prilepiti produkcijsko konfiguracijsko. Kopirajte generirane manifeste, jih prenesite kot datoteko .txt ali pošljite rezultat direktno v vnos, da nadaljujete z doslednostjo namespacea, oznak ali števila replik.

FAQ

Ali podpira dolgo sintakso za vrata in zvezke?
Da. Poleg kratkih nizov, kot je "8080:80" ali "data:/var/lib/data", se berejo tudi vrata in zvezki, napisani kot preslikave (target, published, source).
Zakaj vsak pod dobi restartPolicy: Always?
Predloga poda Deployment sprejme samo to vrednost — krmilnik, ne pa izvajalno okolje kontejnerja, se odloči, kako se odzove na neuspešen kontejner, zato nastavitve ponovnega zagona Compose ne morejo biti neposredno prenesene.
Ali lahko generiram Ingress za storitev brez vrat?
Ne. Service in Ingress manifesti se ustvarijo samo za storitve, ki objavijo vsaj ena vrata v Compose, ker ni ničesar, v kaj bi se usmerilo promet.
Kaj se zgodi s pomnilnikom in omejilkami CPU?
Blok Compose deploy.resources se pretvori v Kubernetes lastne količine: decimalne vrednosti CPU postanejo millicores (0,5 → 500m) in enote pomnilnika, kot sta M ali G, postaneta Mi ali Gi.
Je moja datoteka docker-compose naložena nekje?
Ne. Pretvorba se izvršuje v celoti v vašem brskalniku — vaša datoteka docker-compose in njena vsebina nikoli ne zapustita vašo napravo.