Príručky

Čo je Docker? Kontajnery jednoducho vysvetlené pre nevývojárov

Docker je nástroj, ktorý zabalí aplikáciu spolu so všetkým, čo na beh potrebuje – správnou verziou jazyka, knižnicami, systémovými nástrojmi a nastaveniami – do štandardnej jednotky nazývanej kontajner. Kontajner beží rovnako na notebooku vývojára, testovacom serveri alebo v cloude, čím končí klasický problém „ale na mojom počítači to fungovalo“. Recept na zostavenie kontajnera je krátky textový súbor nazývaný Dockerfile.

Prečo Docker záleží, keď stavate s AI

Ak má vaša aplikácia backend – API v Pythone, Node, C# alebo Jave – musí bežať niekde, kde je nainštalovaný presne správny softvér. Docker je najbežnejší spôsob, ako to urobiť opakovateľne.

  • Nasadzovanie backendov. Mnohé hostingy vrátane Mythex nasadzujú backendy tak, že zostavia kontajner z Dockerfile. V Mythex si vypýtate „C# Web API“ alebo „Java backend“ a dostanete aplikáciu plus Dockerfile; Publish zostaví obraz a nasadí ho (API backendy).
  • Odchod z platformy. Ak exportujete aplikáciu vytvorenú AI, Dockerfile výrazne uľahčí jej spustenie na inom hostingu. Pozrite ako exportovať a hostovať vlastne aplikáciu vytvorenú AI.
  • Spolupráca s vývojármi. Vývojár, ktorý sa pridá k vášmu projektu, dokáže spustiť celú aplikáciu jedným alebo dvoma príkazmi namiesto dňa inštalovania vecí.

Každodenná analógia: lodné kontajnery

Pred štandardnými lodnými kontajnermi sa náklad nakladal kus po kuse – vrecia, sudy, debny – a každý prístav to riešil inak. Štandardný oceľový kontajner to zmenil: zabalíte ho raz a ktorákoľvek loď, žeriav, vlak alebo kamión ho môže presunúť bez ohľadu na to, čo je vnútri.

Docker robí to isté pre softvér:

  • Dockerfile je baliaci zoznam a návod.
  • Obraz je zapečatený, zabalený kontajner.
  • Bežiaci kontajner je tá debna, ktorá je v prevádzke na lodi – tu na serveri.
  • Docker Engine je žeriav a loď: softvér na serveri, ktorý vie spustiť ľubovoľný kontajner.

Ako Docker funguje

SúčasťČo to je
DockerfileTextový súbor s krok-za-krokom inštrukciami na zostavenie obrazu.
Obraz (image)Balík len na čítanie: základy operačného systému, runtime, knižnice a váš kód.
KontajnerBežiaca inštancia obrazu, izolovaná od ostatných aplikácií na rovnakom stroji.
RegisterMiesto na ukladanie a zdieľanie obrazov, napríklad Docker Hub alebo register cloudového poskytovateľa.
Docker EngineSlužba na pozadí, ktorá zostavuje obrazy a spúšťa kontajnery. Zadarmo a open source.
Docker DesktopAplikácia pre Mac, Windows a Linux, ktorá obsahuje engine s grafickým rozhraním.

Kontajnery vs virtuálne počítače: virtuálny počítač sa tvári ako celý samostatný počítač s vlastným operačným systémom, takže je ťažký a pomaly sa spúšťa. Kontajner zdieľa jadro operačného systému hostiteľa a izoluje len aplikáciu a jej súbory, takže sa zvyčajne spustí za pár sekúnd a využíva oveľa menej pamäte. Mnoho kontajnerov môže bežať vedľa seba na jednom serveri.

Praktický príklad: malé API v Pythone

Predstavte si, že váš nástroj s AI vytvoril backend v Pythone FastAPI pre aplikáciu na rezervácie. Dockerfile môže vyzerať 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"]

Riadok po riadku:

RiadokČo robí
FROM python:3.12-slimZačne z oficiálneho obrazu, v ktorom je už nainštalovaný Python 3.12.
WORKDIR /appPracuje v priečinku /app v kontajneri.
COPY requirements.txt . a RUN pip install ...Skopíruje zoznam knižníc a nainštaluje ich.
COPY . .Skopíruje kód samotnej aplikácie.
EXPOSE 8000Poznamenáva, že aplikácia počúva na porte 8000.
CMD [...]Príkaz, ktorý spustí webový server pri spustení kontajnera.

Jednoducho povedané: „Začni s Pythonom 3.12. Nainštaluj knižnice uvedené v requirements.txt. Skopíruj kód. Spusti webový server na porte 8000.“

Vývojár (alebo hostingová platforma) potom spustí dva príkazy:

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

Prvý zostaví obraz a pomenuje ho booking-api. Druhý spustí kontajner a prepojí port 8000 na stroji s portom 8000 vnútri kontajnera. API teraz beží rovnako, ako bude bežať na ktoromkoľvek serveri s Dockerom.

Všimnite si, čo v obraze nie je: heslá a API kľúče. Tie sa odovzdajú pri spustení kontajnera ako premenné prostredia, aby mohol ten istý obraz bežať v testovaní aj v produkcii s rôznymi nastaveniami.

Kľúčové pojmy

PojemVýznam
KontajnerIzolovaný, bežiaci balík aplikácie a jej závislostí.
Obraz (image)Šablóna, z ktorej sa kontajner spúšťa.
Základný obraz (base image)Východiskový bod v riadku FROM Dockerfile, napríklad python:3.12-slim alebo node:22.
Vrstva (layer)Každý krok Dockerfile pridá vrstvu do cache, čo zrýchľuje opätovné zostavenie.
Mapovanie portovPrepojenie portu na hostiteľovi s portom vnútri kontajnera.
VolumeÚložisko, ktoré prežije výmenu kontajnera. Samotné kontajnery sú jednorazové.
Docker ComposeSúbor, ktorý popisuje viac kontajnerov bežiacich spolu, napríklad API plus databázu.
KubernetesSystém na spúšťanie mnohých kontajnerov na mnohých serveroch. Väčšina malých aplikácií ho nepotrebuje.

Bežné omyly

  • „Docker je virtuálny počítač.“ Je ľahší: kontajnery zdieľajú jadro hostiteľa.
  • „Dáta uložené vnútri kontajnera sú v bezpečí.“ Kontajnery sú určené na to, aby sa zahodili a nahradili. Všetko, čo musí pretrvať – dáta používateľov, nahrané súbory – patrí do databázy, úložiska súborov alebo volume.
  • „Dať tajomstvá do Dockerfile je v poriadku, lebo je to súkromné.“ Obrazy sa zdieľajú a nahrávajú do registrov. Tajomstvá odovzdávajte až pri spustení.
  • „Docker robí aplikáciu bezpečnou.“ Izolácia pomáha, ale kontajner s neaktuálnym softvérom a slabými nastaveniami je stále zraniteľný.
  • „Každá aplikácia potrebuje Docker.“ Statická stránka alebo jednoduchý frontend sa zvyčajne hostuje ako obyčajné súbory, bez kontajnera.
  • „Docker Desktop je zadarmo pre každého.“ Engine je zadarmo; Docker Desktop podľa podmienok Dockeru vyžaduje platené predplatné pre väčšie firmy.

Čo požiadať od nástroja na tvorbu aplikácií

  • „Potrebuje táto aplikácia Dockerfile? Ak áno, vysvetli každý riadok jednoducho.“
  • „Použi malý, oficiálny základný obraz a pripni verziu jazyka.“
  • „Nedávaj tajomstvá do obrazu. Načítaj ich z premenných prostredia pri spustení.“
  • „Uisti sa, že nahraté súbory a dáta sú uložené v databáze alebo úložisku súborov, nie vnútri kontajnera.“
  • „Pridaj súbor Docker Compose, aby vývojár mohol spustiť frontend, API a databázu lokálne jediným príkazom.“
  • „Pridaj endpoint na kontrolu zdravia (health check), aby hostiteľ vedel, či API beží.“

Docker v Mythex

Na používanie Mythex nepotrebujete Docker inštalovať ani spúšťať. Váš projekt beží v súkromnom cloudovom sandboxe a keď si vypýtate backend, ktorý potrebuje kontajner – napríklad C#, Javu alebo vlastnú službu v Node alebo Pythone – Mythex napíše aplikáciu plus Dockerfile, zobrazí ju v sandboxe a pri publikovaní ju nasadí bez akéhokoľvek nastavovania hostingu (ako sa vyberá technológia). V Pro môžete projekt exportovať alebo synchronizovať s GitHub a Dockerfile si vziať so sebou. Ako spolu súvisia backend a frontend, pozrite frontend vs backend.

Otázky

Čo je Docker jednoducho povedané?

Docker je nástroj, ktorý zabalí aplikáciu spolu so všetkým, čo na beh potrebuje – runtime jazyka, knižnice a nastavenia – do štandardnej jednotky nazývanej kontajner. Kontajner beží rovnako na notebooku, testovacom serveri alebo v cloude.

Aký je rozdiel medzi Docker obrazom a kontajnerom?

Obraz je zabalená, len na čítanie určená šablóna: aplikácia a jej závislosti, zostavené z Dockerfile. Kontajner je bežiaca kópia tohto obrazu. Z jedného obrazu môžete spustiť mnoho kontajnerov.

Je Docker virtuálny počítač?

Nie. Virtuálny počítač emuluje celý počítač s vlastným operačným systémom. Kontajnery zdieľajú jadro operačného systému hostiteľa a izolujú len aplikáciu, takže sa spúšťajú rýchlejšie a používajú menej pamäte.

Je Docker zadarmo?

Docker Engine, jadro, ktoré spúšťa kontajnery, je zadarmo a open source. Podľa podmienok Dockeru z septembra 2026 je Docker Desktop zadarmo pre nekomerčné open source projekty a pre firmy s menej ako 250 zamestnancami a ročným obratom nižším ako 10 miliónov dolárov; väčšie firmy potrebujú platené predplatné.

Potrebujem sa naučiť Docker, aby som vytvoril aplikáciu s AI?

Zvyčajne nie. Mnohé nástroje na tvorbu aplikácií s AI kontajnery zvládajú za vás. Je však dobré vedieť, čo je Dockerfile, aby ste rozumeli, ako je backend zabalený, a aby ste ho mohli spustiť alebo hostovať inde, ak aplikáciu exportujete.

Mythex · Pricing · Vytvorte čokoľvek s AI · Šablóny webov a aplikácií · Mythex v porovnaní · Slovník pojmov tvorby aplikácií s AI · Bezplatné nástroje na tvorbu aplikácií s AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština 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 Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)