Návod k Dockeru pro začátečníky
V našem tutoriálu k Dockeru vám představíme virtualizační platformu Docker a ukážeme vám, jak používat Docker ve vašem systému Ubuntu 22.04 pomocí snadno srozumitelných pokynů.
Struktura a vlastnosti Dockeru
„Vytvořte, odešlete a spusťte jakoukoli aplikaci kdekoli“ – to je motto společnosti Docker. Tato open-source kontejnerová platforma nabízí flexibilní alternativu s nízkými nároky na zdroje pro emulaci hardwarových komponent založených na virtuálních strojích (VM).
Zatímco tradiční virtualizace hardwaru je založena na spouštění více hostitelských systémů na společném hostitelském systému, aplikace Docker jsou spouštěny jako izolované procesy na stejném systému s pomocí kontejnerů. Tomuto procesu se říká virtualizace založená na kontejnerech, také označovaná jako virtualizace na úrovni operačního systému.

Velkou výhodou virtualizace založené na kontejnerech je to, že aplikace s různými požadavky mohou běžet izolovaně od sebe navzájem, aniž by vyžadovaly režii samostatného hostitelského systému. Navíc lze pomocí kontejnerů nasazovat aplikace napříč platformami a v různých infrastrukturách, aniž by bylo nutné je přizpůsobovat hardwarovým nebo softwarovým konfiguracím hostitelského systému.
Docker je nejoblíbenější softwarový projekt, který uživatelům poskytuje virtualizační technologii založenou na kontejnerech. Tato open-source platforma je založena na třech základních komponentách. K spuštění kontejnerů potřebují uživatelé pouze engine Docker a speciální obrazy Docker, které lze získat prostřednictvím Docker hub nebo vytvořit sami.
Obrazy Dockeru
Podobně jako virtuální stroje jsou i kontejnery Docker založeny na obrazech Docker. Obraz je šablona pouze pro čtení, která obsahuje všechny pokyny, které engine Docker potřebuje k vytvoření kontejneru. Obraz Docker je popsán jako přenosný obraz kontejneru ve formě textového souboru, nazývaného také Dockerfile. Pokud má být kontejner spuštěn v systému, nejprve se načte balíček s příslušným obrazem, pokud neexistuje lokálně. Načtený obraz poskytuje potřebný souborový systém včetně všech parametrů pro běh. Kontejner lze považovat za spuštěný proces obrazu.
Docker hub
Docker hub je cloudový registr pro softwarová úložiště, druh knihovny pro obrazy Docker. Online služba je rozdělena na veřejnou a soukromou část. Veřejná část nabízí uživatelům možnost nahrát vlastní vyvinuté obrazy a sdílet je s komunitou. Zde je k dispozici řada oficiálních obrazů od vývojářského týmu Docker a zavedených open-source projektů. Obrazy nahrané do soukromé části registru nejsou veřejně přístupné, a lze je tedy sdílet například v rámci interního kruhu společnosti nebo s přáteli či známými. Docker hub je přístupný na adrese hub.docker.com.
Engine Docker
Jádrem projektu Docker je Docker engine. Jedná se o open-source klient-serverovou aplikaci, která je v aktuální verzi dostupná všem uživatelům na všech zavedených platformách.
Základní architektura enginu Docker je rozdělena do tří komponent: démon se serverovými funkcemi, programovací rozhraní (API) založené na programovacím paradigmatu REST (Representational State Transfer) a terminál operačního systému (rozhraní příkazového řádku, CLI) jako uživatelské rozhraní (klient).
- Docker daemon: Jako server pro Docker engine se používá proces daemon. Docker daemon běží na pozadí hostitelského systému a slouží k centrálnímu řízení Docker engine. Tato funkce vytváří a spravuje všechny obrazy, kontejnery nebo sítě.
- REST-API: REST-API specifikuje sadu rozhraní, která umožňují jiným programům komunikovat s démonem Docker a dávat mu pokyny. Jedním z těchto programů je terminál operačního systému.
- Terminál: Jako klientský program používá Docker terminál operačního systému. Ten je integrován s démonem Dockeru prostřednictvím REST-API a umožňuje uživatelům ovládat jej pomocí skriptů nebo uživatelských vstupů.
V roce 2017 byl engine Docker přejmenován na Docker Community Edition (zkráceně Docker CE), ale oficiální dokumentace a repozitáře Dockeru většinou stále používají starý název. Kromě Docker CE existuje také Docker Enterprise Edition (Docker EE), který má některé prémiové funkce. Není však zdarma a je vhodnější pro podniky.
Pomocí příkazů Docker lze spouštět, zastavovat a spravovat softwarové kontejnery uživatelů přímo z terminálu. Daemon je adresován pomocí příkazu docker a instrukcí jako build, pull nebo run. Klient a server mohou být na stejném systému. Uživatelé mají také možnost přistupovat k démonu Docker na jiném systému. V závislosti na typu navázaného připojení probíhá komunikace mezi klientem a serverem přes REST-API, přes UNIX sokety nebo přes síťové rozhraní.
Následující grafika ilustruje vzájemné působení jednotlivých komponent Dockeru na příkladu příkazů docker build, docker pull a docker run:

Příkaz docker build dává démonu Docker pokyn k vytvoření obrazu (tečkovaná čára). K tomu musí být k dispozici odpovídající soubor Dockerfile. Pokud se obraz nemá vytvářet, ale načíst z úložiště v Docker Hubu, použije se příkaz docker pull (čárkovaná čára). Pokud je démon Docker prostřednictvím docker run instruován ke spuštění kontejneru, program na pozadí zkontroluje, zda je odpovídající obraz kontejneru lokálně k dispozici. Pokud ano, kontejner se spustí (plná čára). Pokud démon obraz nenajde, automaticky zahájí stažení z úložiště.
Práce s Dockerem
Nyní je čas seznámit se s aplikacemi kontejnerové platformy. Pokud jste ještě nenainstalovali engine Docker, můžete tak učinit prostřednictvím terminálu Linux. Pokyny, jak to udělat, najdete v našem článku s názvem„Instalace Dockeru na Ubuntu 22.04“. Níže se dozvíte, jak ovládat engine Docker z terminálu, co pro vás může Docker Hub udělat a proč mohou kontejnery Docker revolučně změnit způsob, jakým pracujete s aplikacemi.
Jak ovládat engine Dockeru
Od verze 16.04 používá Ubuntu k správě procesů program na pozadí systemd(zkratka pro „system daemon“).Systemd jeproces init, který se používá také v jiných distribucích Linuxu, jako jsou RHEL, CentOS nebo Fedora.SystemdobvykledostáváID procesu 1. Jako první proces systému je démon zodpovědný za spouštění, monitorování a ukončování všech následujících procesů. V předchozích verzích Ubuntu (14.10 a starších) tuto funkci přebíráprogram na pozadí upstart.
Démon Docker lze také ovládat pomocí systemd. Ve standardní instalaci je platforma kontejnerů nakonfigurována tak, aby se démon automaticky spouštěl při startu systému. Toto výchozí nastavení lze přizpůsobit pomocí příkazového řádku systemctl.
Pomocí systemctl odesíláte příkazy do systemd, abyste ovládali proces nebo vyžádali jeho stav. Syntaxe takového příkazu je následující:
systemctl [OPTION] [COMMAND]bashNěkteré příkazy odkazují na konkrétní zdroje (například Docker). V terminologii systemd se tyto zdroje označují jako jednotky. V tomto případě je příkaz výsledkem příslušného pokynu a názvu jednotky, na kterou se má odkazovat.
Pokud chcete aktivovat automatické spuštění démona Docker (povolit) nebo jej deaktivovat (zakázat), použijte nástroj příkazového řádku systemctl s následujícími příkazy:
sudo systemctl enable docker
sudo systemctl disable dockerbashNástroj příkazového řádku systemctl umožňuje dotazovat se na stav jednotky:
sudo systemctl status dockerbashPokud je engine Docker ve vašem systému Ubuntu aktivní, výstup v terminálu by měl vypadat jako na následujícím snímku obrazovky:

Pokud je váš Docker engine momentálně deaktivován, obdržíte stavovou zprávu inactive (dead). V takovém případě musíte ručně spustit Docker daemon, aby bylo možné spustit kontejnery.

Pokud chcete ručně spustit, zastavit nebo restartovat engine Docker, použijte jeden z následujících příkazů pro systém systemd.
Chcete-li spustit deaktivovaného démona, použijte systemctl v kombinaci s příkazem start:
sudo systemctl start dockerbashPokud chcete ukončit démon Docker, použijte místo toho příkaz stop:
sudo systemctl stop dockerbashRestartování motoru se spustí příkazem restart:
sudo systemctl restart dockerbashJak používat Docker hub
Pokud je engine Docker srdcem kontejnerové platformy, pak je Docker Hub duší open-source projektu. Právě zde se schází komunita. V cloudovém registru mohou uživatelé najít vše, co potřebují k oživení své instalace Dockeru.
Online služba nabízí rozmanité oficiální repozitáře s více než 100 000 bezplatnými aplikacemi. Uživatelé mají možnost vytvořit archiv obrazů a používat je společně s pracovními skupinami. Kromě profesionální podpory poskytované vývojovým týmem zde mohou začátečníci najít kontakty na komunitu uživatelů. Fórum pro podporu komunity je k dispozici na GitHubu.

Registrace v Docker Hub
Registrace v Docker Hub je zdarma. Uživatelé potřebují pouze e-mailovou adresu a zvolené Docker ID. To později slouží jako osobní úložiště a umožňuje uživatelům přístup ke všem službám Docker. V současné době tato nabídka zahrnuje kromě Docker Hub také Docker Cloud, Docker Store a vybrané beta programy. Docker ID lze také použít k přihlášení do centra podpory Docker, portálu Docker Success a fóra Docker.
Registrační proces se skládá z pěti kroků:
- Vyberte si své Docker ID: Jako první část aplikace si vyberte uživatelské jméno, které bude později sloužit jako vaše osobní Docker ID.
- Zadejte e-mailovou adresu: Zadejte svou aktuální e-mailovou adresu. Upozorňujeme, že budete muset potvrdit svou registraci v Docker Hubu prostřednictvím e-mailu.
- Vyberte si heslo: Vyberte si tajné heslo.
- Odešlete registraci: Klikněte na „Sign up“ (Registrovat se) a odešlete registraci. Jakmile budou data zcela přenesena, Docker vám zašle odkaz pro ověření vaší e-mailové adresy na vámi zadanou e-mailovou schránku.
- Potvrďte svou e-mailovou adresu: Potvrďte svou e-mailovou adresu kliknutím na ověřovací odkaz.
Online služby projektu Docker jsou ihned po registraci v prohlížeči k dispozici. Zde můžete vytvářet úložiště a pracovní skupiny nebo pomocí funkce „Explore“ vyhledávat veřejné zdroje v Docker Hub.

Můžete se také zaregistrovat přímo v terminálu svého operačního systému pomocí příkazu docker login. Podrobný popis příkazu naleznete v dokumentaci Dockeru.
V zásadě je Docker Hub dostupný i pro ty, kteří nemají účet ani Docker ID. V takovém případě však lze načítat pouze obrazy z veřejných úložišť. Nahrávání (push) vlastních obrazů není bez Docker ID možné.
Vytvořte úložiště v Docker Hubu
Bezplatný účet Docker Hub obsahuje jedno soukromé úložiště a nabízí možnost vytvořit libovolný počet veřejných úložišť. Pokud potřebujete více soukromých úložišť, můžete je odemknout pomocí placeného upgradu.
Chcete-li vytvořit úložiště, postupujte takto:
- Vyberte jmenný prostor: Nově vytvořené repozitáře jsou automaticky přiřazeny k jmennému prostoru vašeho Docker ID. Máte také možnost zadat ID organizace, ke které patříte.
- Pojmenujte repozitář: Zadejte název nově vytvořeného repozitáře.
- Přidejte popis: Přidejte krátký popis vašeho úložiště.
- Nastavte viditelnost: Rozhodněte se, zda má být repozitář veřejně viditelný (veřejný) nebo přístupný pouze vám nebo vaší organizaci (soukromý).
Potvrďte své zadání kliknutím na „Vytvořit“.

Vytvářejte týmy a organizace
S hubem poskytuje Docker cloudovou platformu, na které jsou vlastní vytvořené obrazy centrálně spravovány a pohodlně sdíleny s pracovními skupinami. V terminologii Dockeru se tyto skupiny nazývají organizace. Stejně jako uživatelské účty dostávají organizace individuální ID, přes které lze obrazy poskytovat a stahovat. Práva a role v rámci organizace lze přiřazovat prostřednictvím týmů. Například uživatelé přiřazení k týmu „Vlastníci“ mají oprávnění vytvářet soukromé nebo veřejné repozitáře a přiřazovat přístupová práva.
Pracovní skupiny lze také vytvářet a spravovat přímo přes ovládací panel. Další informace o organizacích a týmech najdete v dokumentaci Dockeru.
Práce s obrázky a kontejnery
Jako první kontaktní místo pro oficiální zdroje Dockeru je Docker hub naším výchozím bodem pro tento úvod do práce s obrazy a kontejnery. Tým vývojářů poskytl demo obraz whalesay, který bude sloužit jako základ pro následující výukový program Dockeru.
Stáhnout obrazy Dockeru
Obrázek whalesay najdete na webových stránkách Docker hub, když do vyhledávacího pole vedle loga Docker zadáte výraz whalesay.

Ve výsledcích vyhledávání klikněte na zdroj s názvem docker/whalesay, abyste získali přístup k veřejnému úložišti tohoto obrazu.
Repozitáře Dockeru jsou vždy vytvořeny podle stejného vzoru. V záhlaví stránky najdou uživatelé název obrazu, kategorii repozitáře a čas posledního nahrání (last pushed).

Každé úložiště Docker také nabízí následující informační pole:
- Popis: Podrobný popis, obvykle včetně návodu k použití
- Příkaz Docker pull: Příkazový řádek používaný ke stažení obrazu z úložiště (
pull) - Vlastník: Informace o tvůrci úložiště
- Komentáře: Sekce komentářů na konci stránky
Informační pole úložiště ukazují, že whalesay je modifikací open-source skriptu Perl cowsay. Program, vyvinutý Tony Monroem v roce 1999, generuje ASCII grafiku ve formě krávy, která se objeví spolu se zprávou v terminálu uživatele.
Chcete-li stáhnout docker/whalesay, použijte příkaz docker pull:
docker pull [OPTIONS] NAME [:TAG|@DIGEST]bashPříkaz docker pull dává démonu pokyn, aby načítal obraz z úložiště. Jaký obraz to je, určíte zadáním názvu obrazu (NAME). Můžete také dát Dockeru pokyn, jak má být požadovaný příkaz proveden (OPTIONS). Volitelné vstupy zahrnují tagy (:TAG) a individuální identifikační čísla (@DIGEST), které vám umožňují stáhnout konkrétní verzi obrazu.
Místní kopii obrazu docker/whalesay získáte pomocí následujícího příkazu:
docker pull docker/whalesaybashObecně můžete tento krok přeskočit. Pokud chcete spustit kontejner, démon Docker automaticky stáhne obrazy z úložiště, které nemůže najít v lokálním systému.
Spouštění obrazů Docker jako kontejnerů
Chcete-li spustit obraz Docker, použijte příkaz docker run:
docker run [OPTIONS] IMAGE [:TAG|@DIGEST] [CMD] [ARG...]bashJedinou povinnou součástí příkazu docker run je název požadovaného obrazu Dockeru. Při spuštění kontejneru však máte také možnost definovat další možnosti, TAGy a DIGESTy. Příkaz docker run lze navíc kombinovat s dalšími příkazy, které se spustí ihned po spuštění kontejneru. V tomto případě se přepíše CMD (COMMAND, definovaný tvůrcem obrazu a automaticky spuštěný při spuštění kontejneru). Další volitelné konfigurace lze definovat pomocí dalších argumentů (ARG…). To umožňuje například přidávat uživatele nebo přenášet proměnné prostředí.
Použijte příkazovou řádku
docker run docker/whalesay cowsay boobashstáhnout existující skript Perl jako obraz a spustit jej v kontejneru. Uvidíte, že whalesay se výrazně liší od zdrojového skriptu.

Pokud je spuštěn obrázek docker/whalesay, skript vygeneruje ASCII grafiku ve tvaru velryby a textovou zprávu „boo“, která je předána příkazem cowsay v terminálu.
Stejně jako při testovacím běhu démon nejprve vyhledá požadovaný obraz v lokálním adresáři souborů. Jelikož neexistuje žádný balíček se stejným názvem, je spuštěno stažení z úložiště Docker. Poté démon spustí upravený program cowsay. Pokud se tento program spustí, kontejner se automaticky ukončí.
Stejně jako cowsay, i whalesay od Dockera nabízí možnost zasáhnout do sekvence programu a ovlivnit textový výstup v terminálu. Vyzkoušejte tuto funkci nahrazením „boo“ ve výstupním příkazu libovolným řetězcem nebo například trapným vtipem o velrybách.
sudo docker run docker/whalesay cowsay What did the shark say to the whale? What are you blubbering about?bash
Zobrazit všechny obrazy Dockeru v lokálním systému
Pokud si nejste jisti, zda jste již konkrétní obrázek stáhli, můžete zobrazit přehled všech obrázků ve vašem lokálním systému. Použijte následující příkazový řádek:
sudo docker imagebashPříkaz docker images (alternativa docker image ls) vypíše všechny místní obrázky včetně velikosti souboru, značky a ID obrázku.

Pokud spustíte kontejner, základní obraz se stáhne jako kopie z úložiště a trvale se uloží do vašeho počítače. To vám ušetří čas, pokud budete chtít k obrazu přistupovat později. Nové stažení se spustí pouze v případě, že se změní zdroj obrazu, například pokud je v úložišti k dispozici aktuální verze.
Zobrazit všechny kontejnery v lokálním systému
Pokud chcete zobrazit přehled všech kontejnerů, které jsou spuštěny ve vašem systému nebo byly spuštěny v minulosti, použijte příkazový řádek docker ps v kombinaci s volbou --all (zkratka: -a):
sudo docker ps -abash
Výstup terminálu obsahuje informace, jako je příslušné ID kontejneru, základní obraz, příkaz spuštěný při spuštění kontejneru, čas spuštění kontejneru a stav.
Pokud chcete zobrazit pouze kontejnery, které jsou aktuálně spuštěny ve vašem systému, použijte příkazovou řádku docker ps bez dalších parametrů:
sudo docker psbashV současné době by však ve vašem systému neměly být spuštěné žádné kontejnery.
Vytvořit obrazy Dockeru
Náš tutoriál k Dockeru vám sice ukázal, jak najít obrazy v Docker Hubu, stáhnout je a spustit na jakémkoli systému s nainstalovaným Docker engine, ale s Dockerem získáte nejen přístup k rozsáhlé nabídce aplikací dostupných v registru. Platforma také nabízí širokou škálu možností pro vytváření vlastních obrazů a jejich sdílení s ostatními vývojáři.
V úvodních kapitolách tohoto tutoriálu o Dockeru jste se již dozvěděli, že každý obraz Dockeru je založen na souboru Dockerfile. Soubory Dockerfile si můžete představit jako jakousi šablonu pro vytváření obrazů. Jedná se o jednoduché textové soubory, které obsahují všechny pokyny, které Docker potřebuje k vytvoření obrazu. V následujících krocích se naučíte, jak tento typ souboru Dockerfile napsat a jak Dockeru zadat, aby jej použil jako základ pro váš vlastní obraz.
- Vytvoření nového adresáře: Tým vývojářů Docker doporučuje vytvořit pro každý soubor Dockerfile nový adresář. Adresáře lze v systému Linux snadno vytvořit v terminálu. Pomocí následujícího příkazu vytvořte adresář s názvem mydockerbuild:
mkdir mydockerbuildbash
- Přejděte do nového adresáře: Pomocí příkazu
cdpřejděte do nově vytvořeného pracovního adresáře.
cd mydockerbuildbash
- Vytvoření nového textového souboru: Textové soubory lze v Ubuntu snadno vytvářet také pomocí terminálu. K tomu použijte editor, jako je Nano nebo Vim. Vytvořte textový soubor s názvem Dockerfile v adresáři mydockerbuild.
nano Dockerfilebash
- Napište soubor Dockerfile: Nově vytvořený textový soubor slouží jako plán pro vytvoření vlastního obrazu. Namísto programování obrazu od základu použijeme v tomto tutoriálu Docker jako šablonu demo obraz docker/whalesay. Ten se integruje pomocí příkazu FROM ve vašem souboru Dockerfile. Použijte značku :latest pro odkaz na nejnovější verzi obrazu.
FROM docker/whalesay:latestZatím funguje docker/whalesay tak, že mu vkládáte slova do úst. V terminálu se zobrazí přesně ten text, který jste zadali, v kombinaci s příkazem ke spuštění kontejneru. Bylo by ale zajímavější, kdyby skript automaticky generoval nový textový výstup. Toho lze dosáhnout například pomocí programu fortunes, který je k dispozici na každém systému Linux. Základní funkcí programu fortunes je generování rčení z koláčků štěstí a vtipných aforismů. Pomocí následujícího příkazu aktualizujte aktuální místní index balíčků a nainstalujte program fortunes:
RUN apt-get -y update && apt-get install -y fortunesPoté definujte příkaz CMD. Ten se provede po příkazu RUN, pokud nebyl přepsán voláním (docker run image CMD). Pomocí následujícího příkazu spusťte program fortunes s volbou -a („Vybrat ze všech databází“) a zobrazte výstup pomocí programu cowsay v terminálu:
CMD /usr/games/fortune -a | cowsayVáš soubor Dockerfile by měl vypadat následovně:
FROM docker/whalesay:latest
RUN apt-get -y update && apt-get install -y fortunes
CMD /usr/games/fortune -a | cowsayPoznámka: Příkazy v souboru Dockerfile jsou vždy psány s jednoduchým řádkováním a vždy začínají klíčovým slovem. Syntaxe nerozlišuje velká a malá písmena, takže nezáleží na tom, zda píšete velkými nebo malými písmeny. Bylo však stanoveno jednotné psaní klíčových slov velkými písmeny.

- Uložení textového souboru: Uložte svůj záznam. Pokud používáte editor Nano, uložte jej pomocí klávesové zkratky [CTRL] + [O] a potvrďte klávesou [ENTER]. Nano vám zobrazí zprávu, že do vybraného souboru byly zapsány tři řádky. Textový editor zavřete pomocí klávesové zkratky [CTRL] + [X].
- Vytvoření obrazu jako Dockerfile: Chcete-li vytvořit obraz z Dockerfile, přejděte nejprve do adresáře, kde se nachází textový soubor. Spusťte vytváření obrazu pomocí příkazu
docker build. Pokud chcete obraz pojmenovat individuálně nebo mu přidělit značku, použijte možnost-ta poté zadejte požadovanou kombinaci štítku a značky. Standardní formát jename:tag.
V aktuálním příkladu by měl být vytvořen obrázek s názvem docker-whale:
docker build -t docker-whale .bashPoslední část označuje, že podkladový soubor Dockerfile se nachází ve vybraném adresáři. Máte také možnost zadat cestu k souboru nebo URL pro zdrojové soubory.
Proces sestavení začíná ihned po potvrzení příkazu klávesou [ENTER]. Nejprve démon Docker zkontroluje, zda má všechny soubory potřebné k vytvoření obrazu. V terminologii Dockeru se toto shrnuje pod pojmem „kontext“.
Poté se nachází obraz docker/whalesay s tagem :latest:
Pokud již existuje celý kontext potřebný pro vytvoření obrazu, démon Docker spustí šablonu obrazu připojenou pomocí FROM v dočasném kontejneru a přejde k dalšímu příkazu v souboru Dockerfile. V aktuálním příkladu se jedná o příkaz RUN, který způsobí instalaci programu fortunes.
Na konci každého kroku procesu vytváření obrazu vám Docker přidělí ID pro odpovídající vrstvu, která byla v daném kroku vytvořena. To znamená, že každý řádek v podkladovém souboru Dockerfile odpovídá jedné vrstvě obrazu, který na něm byl vytvořen.
Po dokončení příkazu RUN démon Docker zastaví kontejner vytvořený pro tento příkaz, odstraní jej a spustí nový dočasný kontejner pro vrstvu příkazu CMD. Na konci procesu vytváření je tento dočasný kontejner také ukončen a odstraněn. Docker vám poskytne ID nového obrazu:
Successfully built a8f2048c9ab8
Nově vytvořený obraz najdete pod názvem docker-whale v přehledu lokálně uložených obrazů.
sudo docker imagesbash
Chcete-li spustit kontejner z nově vytvořeného obrazu, použijte příkazový řádek sudo docker run v kombinaci s názvem obrazu:
sudo docker run docker-whalebashPokud byl obraz vytvořen správně z Dockerfile, vaše velryba by vás nyní měla inspirovat více či méně moudrými slovy. Poznámka: Pokaždé, když restartujete kontejner, vygeneruje se nová fráze.

Označte obrazy Dockeru a nahrajte je do Docker Hubu.
Pokud chcete nahrát svůj vlastní obraz docker-whale do hubu a zpřístupnit jej komunitě nebo pracovní skupině, musíte jej nejprve propojit s repozitářem stejného jména ve svém osobním jmenném prostoru. V terminologii Dockeru se tento krok nazývá tagování.
Chcete-li publikovat obrázek v Docker Hub, postupujte takto:
- Vytvořte úložiště: Přihlaste se do Docker Hubu pomocí svého Docker ID a osobního hesla a vytvořte veřejné úložiště s názvem docker-whale.

- Určete ID obrázku: Určete ID svého vlastního obrázku docker-whale pomocí příkazu příkazového řádku
docker images.

V našem případě je ID obrázku a8f2048c9ab8. Potřebujeme ho pro označení v dalším kroku.
- Označte obrázek: Označte obrázek docker-whale pomocí příkazového řádku programu
docker tagpodle následujícího postupu:
sudo docker tag [Image-ID][Docker-ID]/[Image-Name]:[TAG]bashV aktuálním příkladu zní příkaz pro označování následovně:
sudo docker tag a8f2048c9ab8 [Namespace]/docker-whale:latestbashPomocí přehledu docker images můžete zkontrolovat, zda jste obrázek správně označili. Název úložiště by nyní měl obsahovat vaše Docker ID.

- Nahrajte obrázek: Chcete-li nahrát obrázek, musíte se nejprve přihlásit do Docker Hub. To lze provést pomocí příkazu
docker login.
sudo docker loginbashTerminál vás poté vyzve k zadání uživatelského jména (Docker ID) a hesla.

Pokud se přihlášení podařilo, použijte příkazovou řádku docker push k nahrání obrázku do nově vytvořeného úložiště.
sudo docker push [Namespace]/docker-whalebashProces nahrávání by měl trvat jen několik sekund. Aktuální stav se zobrazuje v terminálu.

Přihlaste se do Docker Hubu prostřednictvím prohlížeče a zobrazte nahraný obrázek.
![Docker hub: The repository [Namespace]/docker-whale in the detailed view Obrázek: Docker hub: The repository [Namespace]/docker-whale in the detailed view](https://guides.uicdn.net/fileadmin/_processed_/5/e/csm_docker-hub-push-result_56530d8ebc.webp)
Pokud chcete nahrát více než jeden obrázek do jednoho úložiště, použijte různé tagy, abyste mohli nabídnout různé verze svých obrázků. Například:
[Namespace]/docker-whale:latest
[Namespace]/docker-whale:version1
[Namespace]/docker-whale:version2Přehled různých verzí obrazů naleznete v úložišti Docker Hub v záložce „Tags“ (Značky).

Obrázky různých projektů by však měly být nabízeny v samostatných úložištích.
Pokud bylo nahrání úspěšné, váš vlastní obraz bude nyní k dispozici ve veřejném úložišti pro všechny uživatele Dockeru po celém světě.
- Zkušební provoz: Otestujte úspěšnost nahrání tím, že se pokusíte obrázek stáhnout.
Upozorňujeme, že místní verzi obrazu je nutné nejprve smazat, aby bylo možné stáhnout novou kopii se stejnou značkou. V opačném případě Docker nahlásí, že požadovaný obraz již v aktuální verzi existuje.

Chcete-li odstranit místní obraz Dockeru, použijte příkazový řádek docker rmi v kombinaci s odpovídajícím ID obrazu. To se určuje jako obvykle pomocí docker images. Pokud Docker zaznamená konflikt, např. protože ID obrazu je použito ve více repozitářích nebo je použito v kontejneru, zopakujte příkaz s volbou --force (zkráceně*-f* ), aby se vynutilo odstranění.
sudo docker rmi -f a8f2048c9ab8bash
Znovu zobrazit přehled všech lokálních obrázků:
sudo docker ImagesbashOdstraněné prvky by se již neměly objevovat ve výstupu terminálu. Nyní použijte příkaz pull uvedený v úložišti ke stažení nové kopie obrazu z Docker hubu.
sudo docker pull [Namespace]/docker-whalebash
Další témata a výukové programy týkající se Dockeru
Svět Dockeru je rozsáhlý a v průběhu času se z nástrojů Dockeru vyvinul živý ekosystém. Docker je obzvláště užitečný pro administrátory, zejména pokud provozují složité aplikace s více kontejnery paralelně na různých systémech. Docker nabízí rozmanité funkce pro orchestraci takovýchto klastrů. Více informací o tomto tématu najdete v našem článku o orchestraci Dockeru pomocí Swarm a Compose.
Digitální průvodce obsahuje další návody pro práci s Dockerem:
- Nastavení úložiště Docker
- Svazky kontejnerů Docker
- Docker: Zálohování a obnovení
- Instalace a spuštění Dockeru na serveru Linux
- Návod k Docker Compose
Docker je vhodný pro různé scénáře použití. V digitálním průvodci najdete následující návody:
- Nasazení WordPressu v kontejnerech Docker
- Spuštění VPN v kontejneru Docker pomocí SoftEther
- Instalace Nextcloud s Dockerem
- Instalace Portainer pod Docker
- Redis v kontejnerech Docker
- Server Valheim Docker
Docker není vždy tou nejlepší volbou pro každou aplikaci. Jeden z našich článků se zabývá nejoblíbenějšími alternativami k Dockeru. Kromě toho máme k dispozici mnoho článků, které porovnávají Docker s jinými platformami:
- Kubernetes vs. Docker
- Openshift vs. Docker
- Podman vs. Docker