Preskoči na sadržaj
100% lokalno

Generator Dockerfile-a

Gradit će proizvodni Dockerfile za vaš jezik s višestupanjskom gradnjom i zadanim vrijednostima.

Rezultat

Generator Dockerfile-a

Odaberite jezik i ovaj će alat sastaviti Dockerfile oko njega — osnovnu sliku, instalaciju ovisnosti i naredbu koja pokraće aplikaciju — umjesto da počnete od prazne datoteke ili prekopirate staru iz starijeg projekta koji više ne odgovara. Node.js, Python, Go, PHP, Java i statične stranice (poslužene s nginx-om) su sve obuhvaćene, svaka sa osnovnom slikom i redoslijed slojeva koje taj stack obično očekuje.

Opcije pokrivaju ono što se mijenja između projekata. Odaberite upravitelja paketa — npm, Yarn ili pnpm za Node; pip ili Poetry za Python — kako bi sloj instalacije kopirao ispravan manifest i lockfile prije ostatka izvora, držeći Docker-ovu cache build-a od reinstaliranja ovisnosti na svakoj promjeni koda. Uključite višestupanjsku gradnju za instalaciju ili kompajliranje u jednoj slici i kopiranje samo izgrađenog izlaza u tanku sliku izvršavanja, otpremu bez kompajlera ili razvojnih ovisnosti. Non-root korisnik, HEALTHCHECK, izloženi priključak, naredba pokretanja i sve varijable okoline postavljaju se iz panela, a .dockerignore čuva .git i node_modules van konteksta gradnje.

Svaki sloj dobiva komentar koji objašnjava što radi i zašto — dokumentacija koliko i način da se sanity-check datoteka prije nego što je commitment, i lako se isključi nakon što znate oblik od srca. Izlaz se ažurira dok mijenjate bilo koju opciju, tako da usporedba jednoslojne gradnje u odnosu na višestupanjsku ne traje bez ručne regeneracije.

Niš što upišete ovdje ne napušta vašu preglednicu — Dockerfile se sastavlja u potpunosti na klijentskoj strani u JavaScriptu. Kopirajte rezultat, preuzimite ga kao .txt datoteku za preimenovanje lokalno ili ga pošaljite na unos drugog alata kako biste nastavili s radom.

FAQ

Граdi li generirani Dockerfile zaista?
Slijedi standardni raspored za svaki jezik — osnovnu sliku, instalaciju ovisnosti, kopiju izvora, naredbu pokretanja — ali još uvijek očekuje da vaš projekt ima uobičajene datoteke (package.json, requirements.txt, go.mod, composer.json ili pom.xml). Prije raspoređivanja provjerite putanje i naredbe prema vašem projektu.
Što se mijenja s opcijom višestupanjske gradnje?
Kad je uključena, prvi "build" sloj instalira ovisnosti (i kompajlira, za Go i Java) i drugi sloj kopira samo gotovu aplikaciju u svježu, minimalnu sliku — manju i s mnogo manjom površinom napada nego jedna slika koja drži svoje build alate oko sebe.
Zašto pokrenuti kao ne-root korisnik?
Proces koji se pokreće kao root unutar kontejnera koji je kompromitiran ima veću sposobnost utjecaja na domaćina. Opcija non-root dodaje namjenskog korisnika (ili ponovno koristi ugrađenog iz slike, kao što je "node") i prebacuje se na njega prije nego što kontejner pokreće vašu aplikaciju.
Što ide u polje varijabli okoline?
Popis odvojen zarezima ili novim linijama ključnih=vrijednostnih parova, na primjer NODE_ENV=production, PORT=3000. Svaki postaje njegova vlastita ENV naredba. Ostavite prazno da biste potpuno preskočili odjeljak.
Je li informacija mojeg projekta nigdje učitana?
Ne. Dockerfile se sastavlja u potpunosti u vašoj pregledniku iz opcija koje odaberete — ništa o vašem projektu se ne šalje na server.