Preskočiť na obsah
100% lokálne

Generátor Dockerfile

Vytvorte produkčný Dockerfile pre váš jazyk s multi-stage buildom a rozumnými štandardami.

Výstup

Generátor Dockerfile

Vyberte si jazyk a tento nástroj pre vás zostavi Dockerfile — základný image, inštaláciu závislostí a príkaz na spustenie aplikácie — namiesto toho, aby ste začínali s prázdnym súborom alebo kopírovali starý Dockerfile z iného projektu. Node.js, Python, Go, PHP, Java a statické stránky (servírované nginx) sú všetky podporované, každá s príslušným základným image a poradím vrstiev, ktoré daný stack zvyčajne očakáva.

Možnosti pokrývajú to, čo sa mení medzi projektami. Vyberte si správcu balíčkov — npm, Yarn alebo pnpm pre Node; pip alebo Poetry pre Python — aby sa vrstva inštalácie kopírovala so správnym manifestom a súborom zámkov predtým ako zvyšok zdrojového kódu, čím sa zabráni zbytočnej reinštalácii závislostí pri každej zmene kódu. Zapnite multi-stage build na kompiláciu v jednom image a skopírujte iba finálny výstup do minimálneho runtime image bez kompilátora a dev závislostí. Užívateľ bez root prístupov, HEALTHCHECK, exponovaný port, príkaz na spustenie a premenné prostredia sa nastavujú z panela a .dockerignore drží mimo build context súbory ako .git a node_modules.

Každá vrstva má krátky komentár vysvetľujúci, čo robí a prečo — dokumentácia zároveň ako spôsob, ako si overiť súbor pred commitom, a ľahko sa dá vypnúť, keď si tvar zapamätáte. Výstup sa aktualizuje hneď, ako zmeníte ktorúkoľvek možnosť, takže porovnanie single-stage a multi-stage buildu si nevyžaduje manuálnu regeneráciu.

Nič, čo napíšete, neopustí váš prehliadač — Dockerfile sa zostaví celý klient-side v JavaScripte. Skopírujte výsledok, stiahnite si ho ako .txt súbor na premenovanie v lokálnom projekte, alebo ho pošlite do iného nástroja, aby ste mohli pokračovať v práci.

Časté otázky

Bude generovaný Dockerfile naozaj fungovať?
Dodržiava štandardný layout pre každý jazyk — základný image, inštaláciu závislostí, kopírovanie zdrojov, príkaz na spustenie — ale očakáva, že váš projekt bude mať obvyklé súbory (package.json, requirements.txt, go.mod, composer.json alebo pom.xml). Skontrolujte cesty a príkazy podľa vášho projektu pred nasadením.
Čo zmení možnosť multi-stage build?
Keď je zapnutá, prvá etapa "build" nainštaluje závislosti (a skompiluje, pre Go a Java) a druhá etapa skopíruje iba finálnu aplikáciu do čistého, minimálneho image — menšieho a s oveľa menším útočným povrchom ako jeden image, ktorý si drží svoje build nástroje.
Prečo spustiť ako užívateľ bez root prístupov?
Proces spustený ako root v kontaineri, ktorý bol kompromitovaný, má väčšiu schopnosť ovplyvniť hostiteľa. Možnosť bez root prístupov pridá dedikovaného užívateľa (alebo znova použije vstavaného z image, ako je "node") a prepne sa naň predtým, ako sa kontainer spustí.
Čo sa zadá do poľa premenných prostredia?
Zoznam párů KEY=value oddelených čiarkou alebo novým riadkom, napríklad NODE_ENV=production, PORT=3000. Každá sa stane vlastnou inštrukciou ENV. Nechajte prázdne na preskočenie tejto časti.
Sú informácie o mojom projekte niekde nahrané?
Nie. Dockerfile sa zostaví úplne v tvojom prehliadači z možností, ktoré si vybral — nič o tvojom projekte sa nešle na žiaden server.