Prozkoumání Dockeru
Správce Windows Serveru společnosti Contoso potřebuje pochopit Docker, kontejnery Dockeru, moduly runtime kontejnerů a způsob jejich spouštění na Windows Serveru.
Přehled modulů runtime Dockeru a kontejnerů
Docker Inc. je společnost, která vytvořila kolekci opensourcových nástrojů, řešení a cloudových služeb, které poskytují společný model pro balení (označovaný také jako kontejnerizace) kódu aplikace do standardizované jednotky pro vývoj softwaru. Tato standardizovaná jednotka, označovaná jako kontejner Dockeru, je software zabalený do kompletního systému souborů, který zahrnuje vše, co potřebuje ke spuštění: kód, modul runtime, systémové nástroje, systémové knihovny a cokoli, co můžete nainstalovat na server.
Pro podporu kontejneru Dockeru existují dvě základní komponenty, které jsou obvykle skryté nebo nepoznané uživatelem spuštěným kontejnerem. Tyto dvě komponenty jsou modul runtime kontejneru a funkce operačního systému pro podporu kontejnerů. Na Windows Serveru se funkce, která podporuje kontejner Dockeru, jednoduše nazývá "Kontejnery". Tato funkce komunikuje s komponentou s názvem Host Compute Service (HCS). HCS zodpovídá za orchestraci virtualizační platformy na Windows Serveru a je nižší rozhraní API, které podporuje kontejnery i virtuální počítače Hyper-V.
Nad funkcí operačního systému, která plánuje kontejnery, je modul runtime kontejneru. Modul runtime kontejneru se nachází mezi rozhraním příkazového řádku, uživatelským rozhraním nebo orchestrátorem kontejnerů a základní funkcí operačního systému. Je to úloha modulu runtime kontejneru pro překlad příkazů od uživatele nebo orchestrátoru kontejnerů do možností platformy operačního systému. Když například požádáte rozhraní příkazového řádku Dockeru o spuštění nového kontejneru, rozhraní příkazového řádku bude komunikovat s modulem runtime kontejneru, který následně odešle příkaz do operačního systému způsobem, kterému rozumí. Moduly runtime kontejnerů existují, takže výše uvedené vrstvy nemusí vědět, jak operační systém očekává příjem příkazů. Z hlediska uživatele je to důležité, protože různé moduly runtime kontejnerů budou mít různé funkce a možnosti.
Pro spouštění kontejnerů ve Windows Serveru je k dispozici mnoho různých modulů runtime kontejneru. Nejběžnější jsou:
- Moby Project. Moby je opensourcový projekt, ze kterého Docker vytváří své komerční projekty. Na Windows Serveru je Moby projekt podporovaný komunitou, který využívá dockerd jako modul runtime kontejneru. Moby je ideální pro testování kontejnerů na Windows Serveru. Při instalaci poskytuje Moby nejen modul runtime kontejneru dockerd, ale také rozhraní příkazového řádku pro interakci s kontejnery na Windows Serveru.
Upozornění
Dockerd ve Windows a Windows Serveru používá HCSv1. V Linuxu se Moby přesunul k použití kontejneru jako modulu runtime kontejneru. V současné době se pracuje na přesunu Moby do kontejneruD ve Windows, využití novějšího a vylepšeného rozhraní HCSv2.
ContainerD. ContainerD je opensourcový modul runtime kontejneru a nedávno byl vytvořen jako upřednostňovaný modul runtime kontejneru pro prostředí Kubernetes. ContainerD je možné použít v produkčních prostředích a je výchozím modulem runtime kontejneru pro Windows Server 2022 při spuštění v prostředích Kubernetes. Při instalaci KontejnerD neposkytuje rozhraní příkazového řádku pro interakci s kontejnery. Místo toho je možné použít jiné opensourcové rozhraní CLI, jako je CRICTL nebo NerdCTL.
Mirantes Container Runtime (MCR). MCR, formálně označovaný jako Docker edice Enterprise (Docker EE), poskytuje stejné funkce jako Docker CE a další funkce vytvořené speciálně pro podniková nasazení. McR se doporučuje při použití DockerU Swarm jako orchestrátoru kontejnerů. Při instalaci poskytuje MCR modul runtime kontejneru a stejné prostředí rozhraní příkazového řádku jako Docker a Moby.
Poznámka
Další komponenta označovaná jako Docker Desktop pro Windows se dá použít ve Windows 10 a 11 pro účely vývoje.
Spouštění kontejnerů na Windows Serveru
Než spustíte kontejnery na Windows Serveru, musíte zjistit, jaký modul runtime kontejneru chcete ve svém prostředí použít. Modul runtime kontejneru určuje proces instalace, který je potřeba provést. Další informace o možnostech systému Windows Server a o tom, jak je nainstalovat, najdete v tématu příprava hostitele Windows Serveru pro kontejnery.
Důležité
Pokud pro kontejnery plánujete používat režim izolace Technologie Hyper-V, budete také muset na hostitelský server nainstalovat roli serveru Hyper-V. Pokud je hostitelský server sám virtuální počítač, musíte před instalací role Hyper-V povolit vnořenou virtualizaci. Vzhledem k tomu, že Windows 10 a 11 ve výchozím nastavení spouští kontejnery založené na Systému Windows v režimu izolace Technologie Hyper-V, musí být pro podporu tohoto výchozího režimu nainstalována funkce Hyper-V v hostitelském prostředí Windows 10 a 11.
Centrum Dockeru
Kontejnery jsou založené na imagích kontejnerů a tyto image je možné ukládat do úložišť. Úložiště fungují jako umístění, kde můžete vytvářet, ukládat, zabezpečit a sdílet image kontejnerů. Docker Hub je webová služba online knihovny spravovaná Dockerem, ve které můžete:
Zaregistrujte, uložte a spravujte vlastní image Dockeru v online úložišti a pak je sdílejte s ostatními.
Přístup k více než 100 000 imagím kontejnerů od dodavatelů softwaru, opensourcových projektů a dalších členů komunity
Microsoft Container Registry
Microsoft poskytuje image kontejnerů prostřednictvím služby Microsoft Container Registry (MCR) v mcr.microsoft.com. Toto je oficiální zdroj imagí kontejnerů poskytovaných Microsoftem. Bez ohledu na to, kde jsou zjištěny image kontejnerů Microsoftu, je zdroj vyžádané replikace mcr.microsoft.com.
Poznámka
Azure Container Registry je služba Azure, kterou můžete použít k vytvoření vlastního úložiště imagí kontejneru. Toto úložiště můžete použít k ukládání a správě imagí pro všechny typy nasazení kontejneru.