Průvodci

Co je Docker? Kontejnery vysvětlené pro nevývojáře

Docker je nástroj, který zabalí aplikaci spolu se vším, co potřebuje ke běhu — správnou verzí jazyka, knihovnami, systémovými nástroji a nastaveními — do standardní jednotky zvané kontejner. Kontejner běží stejně na notebooku vývojáře, na testovacím serveru i u cloudového hostingu, a tím končí klasický problém „ale u mě to fungovalo". Recept na sestavení kontejneru je krátký textový soubor zvaný Dockerfile.

Proč na Dockeru záleží, když stavíte s AI

Pokud má vaše aplikace backend — API v Pythonu, Node, C# nebo Javě — musí běžet na místě, kde je přesně správný software. Docker je nejběžnější způsob, jak to udělat opakovatelně.

  • Nasazování backendů. Mnoho hostingů, včetně Mythexu, nasazuje backendy tak, že z Dockerfile sestaví kontejner. V Mythexu si vyžádáte „C# Web API" nebo „Java backend" a dostanete aplikaci plus Dockerfile; Publikovat sestaví obraz a nasadí ho (API backendy).
  • Odchod z platformy. Pokud exportujete aplikaci postavenou s AI, Dockerfile výrazně usnadní její spuštění na jiném hostingu. Viz jak exportovat a hostovat vlastním serverem aplikaci postavenou s AI.
  • Spolupráce s vývojáři. Vývojář, který se připojí k vašemu projektu, může spustit celou aplikaci jedním nebo dvěma příkazy místo toho, aby strávil den instalací věcí.

Každodenní přirovnání: přepravní kontejnery

Předtím, než existovaly standardní přepravní kontejnery, se náklad nakládal kus po kusu — pytle, sudy, bedny — a každý přístav to řešil jinak. Standardní ocelový kontejner to změnil: zabalíte ho jednou a jakákoli loď, jeřáb, vlak nebo kamion ho přesune, aniž by řešili, co je uvnitř.

Docker dělá totéž pro software:

  • Dockerfile je balicí seznam a návod.
  • Obraz je zapečetěný, zabalený kontejner.
  • Běžící kontejner je ta bedna, která pracuje na lodi — tady na serveru.
  • Docker Engine je jeřáb a loď: software na serveru, který umí spustit jakýkoli kontejner.

Jak Docker funguje

ČástCo to je
DockerfileTextový soubor s krok-za-krokem instrukcemi pro sestavení obrazu.
Obraz (image)Balíček jen pro čtení: základy operačního systému, běhové prostředí, knihovny a váš kód.
KontejnerBěžící instance obrazu, izolovaná od ostatních aplikací na stejném stroji.
RegistrMísto pro ukládání a sdílení obrazů, například Docker Hub nebo registr cloudového poskytovatele.
Docker EngineSlužba na pozadí, která sestavuje obrazy a spouští kontejnery. Zdarma a s otevřeným kódem.
Docker DesktopAplikace pro Mac, Windows a Linux, která obaluje engine grafickým rozhraním.

Kontejnery versus virtuální počítače: virtuální počítač předstírá, že je celý oddělený počítač s vlastním operačním systémem, takže je těžký a pomalu startuje. Kontejner sdílí jádro operačního systému hostitele a izoluje jen aplikaci a její soubory, takže obvykle startuje za několik sekund a spotřebuje mnohem méně paměti. Na jednom serveru může běžet mnoho kontejnerů vedle sebe.

Praktický příklad: malé Python API

Představme si, že váš AI nástroj vytvořil pro rezervační aplikaci backend v Python FastAPI. Dockerfile může vypadat takto:

FROM python:3.12-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
EXPOSE 8000
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]

Řádek po řádku:

ŘádekCo dělá
FROM python:3.12-slimZačne od oficiálního obrazu, který už má nainstalovaný Python 3.12.
WORKDIR /appPracuje ve složce /app uvnitř kontejneru.
COPY requirements.txt . a RUN pip install ...Zkopíruje seznam knihoven a nainstaluje je.
COPY . .Zkopíruje vlastní kód aplikace.
EXPOSE 8000Upozorňuje, že aplikace naslouchá na portu 8000.
CMD [...]Příkaz, který při spuštění kontejneru nastartuje webový server.

Prosté slovy: „Začni s Pythonem 3.12. Nainstaluj knihovny uvedené v requirements.txt. Zkopíruj kód. Spusť webový server na portu 8000."

Vývojář (nebo hostingová platforma) pak spustí dva příkazy:

docker build -t booking-api .
docker run -p 8000:8000 booking-api

První sestaví obraz a pojmenuje ho booking-api. Druhý spustí kontejner a propojí port 8000 na stroji s portem 8000 uvnitř kontejneru. API teď běží — stejně jako poběží na libovolném serveru s Dockerem.

Všimněte si, co v obrazu není: hesla a API klíče. Ty se předávají až při spuštění kontejneru jako proměnné prostředí, takže stejný obraz může běžet v testování i v produkci s různým nastavením.

Klíčové pojmy

PojemVýznam
KontejnerIzolovaný, běžící balíček aplikace a jejích závislostí.
ObrazŠablona, ze které se kontejner spouští.
Základní obraz (base image)Výchozí bod v řádku FROM v Dockerfile, například python:3.12-slim nebo node:22.
VrstvaKaždý krok Dockerfile přidá vrstvu do cache, což zrychluje opětovná sestavení.
Mapování portůPropojení portu hostitele s portem uvnitř kontejneru.
Svazek (volume)Úložiště, které přežije výměnu kontejneru. Samotné kontejnery jsou jednorázové.
Docker ComposeSoubor popisující několik kontejnerů, které běží společně, například API plus databázi.
KubernetesSystém pro běh mnoha kontejnerů na mnoha serverech. Většina malých aplikací ho nepotřebuje.

Časté omyly

  • „Docker je virtuální počítač." Je lehčí: kontejnery sdílejí jádro hostitele.
  • „Data uložená uvnitř kontejneru jsou v bezpečí." Kontejnery mají být zahozeny a nahrazeny. Cokoli, co musí přetrvat — uživatelská data, nahrané soubory — patří do databáze, úložiště souborů nebo svazku.
  • „Tajné údaje v Dockerfile jsou v pořádku, protože jsou soukromé." Obrazy se sdílejí a nahrávají do registrů. Tajné údaje předávejte až za běhu.
  • „Docker dělá aplikaci bezpečnou." Izolace pomáhá, ale kontejner se zastaralým softwarem a slabým nastavením je zranitelný pořád.
  • „Každá aplikace potřebuje Docker." Statický web nebo jednoduchý frontend se obvykle hostuje jako běžné soubory, bez kontejneru.
  • „Docker Desktop je zdarma pro každého." Engine je zdarma; Docker Desktop podle podmínek Dockeru vyžaduje placené předplatné u větších firem.

Na co se zeptat svého AI nástroje

  • „Potřebuje tato aplikace Dockerfile? Pokud ano, vysvětli každý řádek srozumitelně."
  • „Použij malý oficiální základní obraz a připni verzi jazyka."
  • „Drž tajné údaje mimo obraz. Čti je za běhu z proměnných prostředí."
  • „Ujisti se, že nahrané soubory a data jsou uložena v databázi nebo úložišti souborů, ne uvnitř kontejneru."
  • „Přidej soubor Docker Compose, aby vývojář mohl spustit frontend, API a databázi lokálně jedním příkazem."
  • „Přidej koncový bod pro kontrolu stavu, aby hostitel poznal, zda API běží."

Docker v Mythexu

Na používání Mythexu Docker instalovat ani spouštět nemusíte. Váš projekt běží v soukromém cloudovém sandboxu a když si vyžádáte backend, který potřebuje kontejner — například C#, Javu nebo vlastní službu v Node nebo Pythonu — Mythex napíše aplikaci plus Dockerfile, ukáže náhled v sandboxu a při publikování ji nasadí, bez jakéhokoli nastavování hostingu (jak se volí technologie). Na Pro můžete projekt exportovat nebo synchronizovat s GitHubem a Dockerfile si odnést s sebou. Jak spolu backendy a frontendy souvisejí, viz frontend vs backend.

Otázky

Co je Docker jednoduše řečeno?

Docker je nástroj, který zabalí aplikaci spolu se vším, co potřebuje ke běhu — běhovým prostředím jazyka, knihovnami a nastaveními — do standardní jednotky zvané kontejner. Kontejner běží stejně na notebooku, na testovacím serveru i u cloudového hostingu.

Jaký je rozdíl mezi Docker obrazem a kontejnerem?

Obraz je zabalená šablona jen pro čtení: aplikace a její závislosti, sestavené podle Dockerfile. Kontejner je běžící kopie tohoto obrazu. Z jednoho obrazu lze spustit mnoho kontejnerů.

Je Docker virtuální počítač?

Ne. Virtuální počítač emuluje celý počítač s vlastním operačním systémem. Kontejnery sdílejí jádro operačního systému hostitele a izolují jen aplikaci, takže se spouštějí rychleji a spotřebovávají méně paměti.

Je Docker zdarma?

Docker Engine, jádro, které kontejnery spouští, je zdarma a má otevřený zdrojový kód. Podle podmínek Dockeru z září 2026 je Docker Desktop zdarma pro nekomerční projekty s otevřeným zdrojovým kódem a pro firmy s méně než 250 zaměstnanci a ročním obratem nižším než 10 milionů dolarů; větší firmy potřebují placené předplatné.

Potřebuji se naučit Docker, abych mohl stavět aplikaci s AI?

Obvykle ne. Mnoho AI nástrojů kontejnery zvládne za vás. Je dobré vědět, co je Dockerfile, abyste rozuměli tomu, jak je backend zabalen, a mohli aplikaci spustit nebo hostovat jinde, pokud ji exportujete.

Mythex · Pricing · Vytvořte cokoli s AI · Šablony webů a aplikací · Mythex v porovnání · Slovník tvorby aplikací s AI · Bezplatné nástroje pro tvorbu aplikací s AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)