Výukový program Docker pro začátečníky: Základy, Architecture, Kontejnery

Co je to Docker?

přístavní dělník je platforma pro vývoj softwaru pro virtualizaci s více Operating systémů běžících na stejném hostiteli. Pomáhá oddělit infrastrukturu a aplikace za účelem rychlého dodání softwaru. Na rozdíl od hypervizorů, které se používají k vytváření virtuálních počítačů (virtuálních počítačů), se virtualizace v Dockeru provádí na systémové úrovni, nazývané také kontejnery Docker.

Jak můžete vidět rozdíl na obrázku níže, kontejnery Docker běží nad hostitelem Operasystém. To vám pomůže zlepšit efektivitu a bezpečnost. Navíc můžeme na stejné infrastruktuře provozovat více kontejnerů, než můžeme provozovat virtuální stroje, protože kontejnery využívají méně prostředků.

Virtualizace v Docker vs Hypervisor
Virtualizace v Docker vs Hypervisor

Na rozdíl od virtuálních počítačů, které mohou komunikovat s hardwarem hostitele (např. ethernetový adaptér pro vytvoření více virtuálních adaptérů), kontejnery Docker běží v izolovaném prostředí nad hostitelským OS. I když váš hostitel běží Windows OS můžete mít obrazy Linuxu spuštěné v kontejnerech pomocí Hyper-V, který automaticky vytvoří malý virtuální počítač pro virtualizaci základního obrazu systému, v tomto případě Linux.

Proč používat Docker?

  • Docker je počítačový software používaný pro virtualizaci s cílem mít více Operatingové systémy běžící na stejném hostiteli
  • Docker je aplikace typu klient-server, což znamená, že máme klienty, kteří přenášejí na server
  • Obrázky dockerů jsou „zdrojovým kódem“ našich kontejnerů; používáme je ke stavbě
  • Dockerfile má dva typy registrů 1.) veřejné a 2) soukromé registry
  • Kontejnery jsou organizační jednotky svazku Docker. Jednoduše řečeno, obrázek je šablona a kontejner je kopie této šablony. Můžete mít více kontejnerů (kopií) stejného obrázku.

přístavní dělník Architecture

Nyní v tomto kurzu kontejneru Docker promluvme o hlavních komponentách Dockeru v Dockeru Archistruktura:

přístavní dělník Architecture
přístavní dělník Architecture

Docker Engine

Docker je aplikace typu klient-server, což znamená, že máme klienty, kteří přenášejí na server. Démon Docker s názvem: dockerd je tedy motor Dockeru, který reprezentuje server. Démon docker a klienti mohou být spouštěni na stejném nebo vzdáleném hostiteli a komunikují prostřednictvím binárního klienta příkazového řádku, stejně jako plného RESTful API pro interakci s démonem: dockerd.

Docker obrázky

Obrázky dockerů jsou „zdrojovým kódem“ našich kontejnerů; používáme je na stavbu kontejnerů. Mohou mít předinstalovaný software, který urychluje nasazení. Jsou přenosné a můžeme použít existující obrázky nebo vytvořit vlastní.

Registry Docker

Docker ukládá vytvořené obrázky do registrů. Existují veřejné a soukromé registry. Společnost Docker má tzv. veřejný rejstřík Docker hub, kde můžete také ukládat obrázky soukromě. Docker Hub má miliony obrázků, které můžete začít používat hned.

Docker kontejnery

Kontejnery jsou organizační jednotky a jeden ze základních konceptů Dockeru. Když vytvoříme obraz a začneme jej spouštět; běžíme v kontejneru. Analogie kontejneru se používá kvůli přenositelnosti softwaru, který v našem kontejneru běží. Můžeme jej přesouvat, jinými slovy „dopravovat“ software, upravovat, spravovat, vytvářet nebo se ho zbavovat, ničit, stejně jako to dokážou nákladní lodě se skutečnými kontejnery.

Jednoduše řečeno, obrázek je šablona a kontejner je kopie této šablony. Můžete mít více kontejnerů (kopií) stejného obrázku.

Níže máme obrázek, který dokonale znázorňuje interakci mezi různými komponentami a jak funguje technologie kontejnerů Docker.

Co máme několik dockers příkazů docker pull, docker run.. o tom si povíme později.

Jak nainstalovat Docker na Linux/Ubuntu

Níže je postup instalace Dockeru krok za krokem v systému Linux/Ubuntu:

Krok 1) K instalaci Dockeru musíme použít DEB balíčky týmu Docker.

K tomu nějaký předpoklad Ubuntu jsou vyžadovány balíčky.

K instalaci použijte níže uvedený příkaz Ubuntu balíčky

$ sudo apt-get install \
apt-transport-https \
ca-certificates curl \
software-properties-common

*znak „\“ není nutný, používá se pro nový řádek, pokud chcete, můžete příkaz napsat bez použití „\“ pouze na jeden řádek.

Krok 2) Přidejte oficiální klíč Docker GPG s otiskem prstu.

Pomocí níže uvedeného příkazu Docker zadejte klíč GPG

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Krok 3) Dále přidejte úložiště Docker APT.

Pomocí níže uvedeného příkazu Docker přidejte úložiště

$ sudo add-apt-repository \ 
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \ 
$(lsb_release -cs) \
stable"

Můžete být vyzváni k potvrzení, že si přejete přidat úložiště a nechat GPG klíč automaticky přidat do vašeho hostitele.

Příkaz lsb_release by měl naplnit soubor Ubuntu distribuční verzi vašeho hostitele.

Krok 4) Po přidání klíče GPG

Aktualizujte zdroje APT pomocí níže uvedeného příkazu Docker

$ sudo apt-get update

Nyní můžeme nainstalovat samotný balíček Docker.

Krok 5) Jakmile jsou zdroje APT aktualizovány,

Začněte instalovat balíčky Docker na Ubuntu pomocí níže uvedeného příkazu Docker

$ sudo apt-get install docker-ce

Výše uvedený příkaz nainstaluje Docker a další další požadované balíčky. Před Dockerem 1.8.0 byl název balíčku lxc-docker a mezi Dockerem 1.8 a 1.13 byl název balíčku docker-engine.

POZNÁMKA: Docker pro Windows Vyžaduje Windows 10 Pro nebo Enterprise verze 14393, popř Windows spustit server 2016 RTM

Jak používat Docker pomocí základních příkazů Dockeru

Zde je návod, jak používat Docker pomocí základních příkazů Dockeru:

Nejzákladnějším příkazem, který musíme spustit po instalaci Dockeru, je $ docker info, jak jsme řekli dříve.

$ sudo docker info

Měli byste získat podobný nebo následující výsledek

Používejte Docker pomocí základních příkazů Dockeru

Jak můžeme vidět ve výše uvedeném příkladu Dockeru, máme informace o kontejnerech dockeru, kolik jich běží, je pozastaveno nebo zastaveno a kolik obrázků jsme si stáhli. Pojďme tedy získat náš první obrázek v tomto tutoriálu příkazů Docker.

$ sudo docker pull alpine

Tímto příkazem říkáme dockeru, aby si stáhl image alpine, aby jej vytáhl z veřejného registru, nejnovější verze, která je standardně nastavena.

*alpine je minimální obraz Dockeru založený na Alpine Linuxu s úplným indexem balíčků a velikostí pouze 5 MB.

Pokud chceme spustit obrázek jako kontejner, použijeme následující příkaz v této příručce s Docker tutoriály.

$ sudo docker run -i -t alpine /bin/bash

Pokud příkaz spustíme, budeme posláni přímo do alpinského terminálu. Parametr -i udržuje STDIN otevřený z kontejneru, i když k němu nejste připojeni. Tento trvalý standardní vstup je polovinou toho, co požadujete pro interaktivní shell. Příznak -t je druhou polovinou a instruuje Docker, aby přiřadil pseudo-tty kontejneru. To nám nabízí interaktivní shell v novém kontejneru. Kontejner opustíme jednoduchým příkazem exit.

Nyní v tomto základním tutoriálu Dockeru můžeme zkusit spustit soubor Ubuntu obrázek.

$ sudo docker run -it ubuntu /bin/bash

Můžete si všimnout, že docker kontroluje obrázek lokálně, a pokud tam není, obrázek se automaticky stáhne z knihovny obrázků a opět máme spuštěný interaktivní shell. Kontejnery můžeme také pojmenovat, jak je provozujeme.

$ sudo docker run –-name our_container -it ubuntu /bin/bash

a zase vystupujeme.

Můžeme také spustit kontejner, který jsme dříve vytvořili, bez interaktivního shellu.

$ sudo docker start container_name

A zastavte zápis kontejneru docker stop název_kontejneru

$ sudo docker stop container_name

Pokud chceme vidět všechny běžící kontejnery, prostě běžíme

$ docker ps

A pro všechny kontejnery přidáme „- a“ na konec stejného příkazu, jako je tento docker ps -a.

Tento příkaz zobrazuje ID kontejneru, který obrázek používá, když byl vytvořen, stav běhu, vystavené porty a náhodně vygenerovaný název kontejneru pro snadnější správu.

Když spouštíme kontejnery, také bychom rádi věděli, kolik prostředků využívají, k tomuto účelu můžeme použít příkaz.

$ docker stats

Můžete také vidět, které obrázky jsme stáhli lokálně a informace o nich.

$ sudo docker images

Příkaz ve výše uvedeném příkladu Dockeru zobrazí obrázek dockeru se značkou, která ukazuje naši verzi obrázku, charakteristické ID obrázku, kdy byl vytvořen a velikost obrázku.

Co je virtualizace?

Dříve byl proces nasazení služby pomalý a bolestivý. Za prvé, vývojáři psali kód; pak jej operační tým nasadil na holé kovové stroje, kde musel hledat verze knihoven, záplaty a jazykové kompilátory, aby kód fungoval. Pokud by se vyskytly nějaké chyby nebo chyby, celý proces by začal znovu, vývojáři by to opravili a operační tým byl opět na místě.

S vytvořením hypervizorů došlo ke zlepšení. Hypervizorů jich je více Virtuální stroje nebo virtuální počítače na stejném hostiteli, který může být spuštěný nebo vypnutý. Virtuální počítače výrazným způsobem zkrátily čekací dobu na nasazení kódu a opravu chyb, ale skutečným změnou hry byly kontejnery Docker.

Důležité příkazy Dockeru

Níže jsou uvedeny důležité příkazy Dockeru:

Příkaz Description
informace o dockeru Informační příkaz
docker vytáhnout Stáhněte si obrázek
docker spusťte -i -t název_obrázku /bin/bash Spustit obrázek jako kontejner
docker start our_container Spusťte kontejner
docker stop název_kontejneru Zastavte kontejner
docker ps Seznam všech běžících kontejnerů
docker statistiky Informace o kontejneru
obrázky doků Seznam stažených obrázků
Vyčištění dockeru Zabijte všechny běžící kontejnery.

Také si přečtěte Otázky a odpovědi na pracovní pohovor Docker pro čerstvější i zkušené profesionály.

Shrnutí

  • Docker je platforma pro vývoj softwaru pro vícenásobnou virtualizaci Operating systémů běžících na stejném hostiteli. Pomáhá oddělit infrastrukturu a aplikace za účelem rychlého dodání softwaru.
  • přístavní dělník Archistruktura: Docker Engine, Docker Images, Docker Registry, Docker Containers.
  • Docker Engine: Docker je aplikace typu klient-server, což znamená, že máme klienty, kteří přenášejí na server. Démon Docker s názvem: dockerd je tedy motor Dockeru, který reprezentuje server.
  • Docker obrázky: Obrázky dockerů jsou „zdrojovým kódem“ našich kontejnerů; používáme je na stavbu kontejnerů. Mohou mít předinstalovaný software, který urychluje nasazení. Jsou přenosné a můžeme použít existující obrázky nebo vytvořit vlastní.
  • Registry Docker: Docker ukládá vytvořené obrázky do registrů. Existují veřejné a soukromé registry. Společnost Docker má veřejný registr s názvem Docker hub, kde můžete také ukládat obrázky soukromě. Docker Hub má miliony obrázků, které můžete začít používat hned.
  • Docker kontejnery: Kontejnery jsou organizační jednotky a jeden ze základních konceptů Dockeru. Když vytvoříme obraz a začneme jej spouštět; běžíme v kontejneru. Analogie kontejneru se používá kvůli přenositelnosti softwaru, který v našem kontejneru běží.