Preskoči na sadržaj
100% lokalno

docker-compose u Kubernetes manifest

Konvertiraj docker-compose servise u Kubernetes Deployment i Service manifeste.

Unos
Rezultat

docker-compose u Kubernetes manifest

Zalijepi docker-compose.yml datoteku i ovaj alat konvertira svaki servis u spremne za primjenu Kubernetes manifeste: Deployment i, kada servis objavljuje port, odgovarajući Service. Napravljen je za developere koji premještaju Compose stack na cluster, ručno kreiraju Helm chart ili jednostavno trebaju prvi provjera YAML-a umjesto da pisanju svakog polja od nule.

Postavi namespace i česte labele koji će se primijeniti na svaki generirani resurs, i odaberi koliko replika svaki Deployment trebao pokrenuti. Portovi se konvertiraju u ClusterIP ili NodePort Service ovisno o što odabereš, varijable okruženja postaju ConfigMap ili Secret, a volumeni postaju PersistentVolumeClaim ili emptyDir — ovisno što se podudara sa kako planiraš pokrenuti radnog opterećenja. Uključi readiness i liveness provjere kako bi dodao osnovnu TCP provjeru na prvom portu kontejnera, i uključi Ingress generiranje kako bi izložio port-nosivim servisima izvan klastera.

Compose-ove cpus i memory limite pod deploy.resources prevode se u Kubernetes vlastiti format količine — 0.5 cpus postaje 500m, 512M postaje 512Mi — i svaki generirani pod template dobiva restartPolicy: Always, jedina vrijednost koju Deployment prihvaća. Servis bez slike, portova ili volumena i dalje proizvodi minimalni Deployment. Datoteka bez top-level services: sekcije, ili YAML koji se ne može parsirati, vraća jasnu grešku koja navodi redak umjesto praznog rezultata.

Sve se izvršava u tvom pregledniku: compose datoteka nikada ne napušta tvoj uređaj, pa je sigurno zalijepit produkcijsku konfiguraciju. Kopiraj generirane manifeste, preuzmi ih kao .txt datoteku, ili pošalji rezultat direktno u ulaz kako bi nastavio doraditi namespace, labele ili broj replika.

FAQ

Podržava li dugačku sintaksu za portove i volumene?
Da. Uz kratke nizove kao "8080:80" ili "data:/var/lib/data", portovi i volumeni napisani kao mappingi (target, published, source) se também čitaju.
Zašto svaki pod dobija restartPolicy: Always?
Deployment-ov pod template samo prihvaća tu vrijednost — kontroler, a ne container runtime, odlučuje kako reagirati na neuspješan kontejner, pa se Compose-ova vlastita restart postavka ne može prenijeti jedan-na-jedan.
Može li generiraj Ingress za servis bez porta?
Ne. Service i Ingress manifesti se kreiraju samo za servise koji objavljuju najmanje jedan port u Compose, jer nema ničega na što preusmjeriti promet.
Što se dogodi s memory i CPU limitima?
Compose-ova deploy.resources blok se konvertira u Kubernetes vlastite količine: decimalne CPU vrijednosti postaju millicores (0.5 → 500m) i memory jedinice kao M ili G postaju Mi ili Gi.
Je li moja docker-compose datoteka uploadana negdje?
Ne. Konverzija se izvršava potpuno u tvom pregledniku — tvoja compose datoteka i njen sadržaj nikada ne napuštaju tvoj uređaj.