GNU/Linux >> Znalost Linux >  >> Panels >> Docker

Docker Část 4:Vytváření a publikování vlastních obrázků dockeru

V první a druhé části jsme se zabývali základy provozu kontejneru přípravou našeho systému pro správu kontejnerů docků a to, co přesně znamená použití kontejneru dockeru proti jiným virtualizačním technologiím z technického hlediska. Ve třetí části jsme se věnovali obrázkům dockerů, naučili jsme se základy a vytvořili náš první kontejner Poznámkový blok pomocí WordPress nebo DokuWiki.

V této čtvrté části se podíváme na to, jak se vytvářejí obrázky dockerů, a vytvoříme si vlastní vlastní obrázek připravený ke stažení a sdílení s našimi přáteli, kolegy a komunitami.

V tomto tutoriálu použijeme obrázek Whale Docker. Velryba je oficiálním maskotem Dockeru a obrázek Whale dockeru připomíná program cowsay, který generuje ASCII obrázky krávy v terminálu se zprávou. Může také generovat obrázky pomocí předem připravených obrázků jiných zvířat, jako je tučňák Tux, maskot Linuxu.

Úvod do Docker Files

V předchozí části jsme se představili Docker Hub a dozvěděli jsme se, že jde o cloudový centralizovaný zdroj pro zjišťování obrázků kontejnerů, vytváření obrázků a distribuci těchto obrázků. Dozvěděli jsme se také, že obrázek dockeru je vícevrstvý obrázek nad základním obrázkem. To znamená, že použití základního obrazu odstraňuje potíže s vytvářením vhodného OS pro obraz dockeru od začátku a dává nám možnost přizpůsobit horní vrstvy, kde bude náš software umístěn.

Chcete-li vytvořit vlastní bitovou kopii pomocí základní bitové kopie, musíme poskytnout docker engine instrukce, jak nainstalovat a nakonfigurovat balíčky a soubory, a také některá nastavení, která s tím souvisí. Tyto instrukce jsou zapsány v prostém textovém souboru s názvem „dockerfile“. Dockerfiles jsou jako recepty, které předáte kuchaři a on vám uvaří skvělé jídlo. Tyto soubory dockeru se zapisují pomocí jednoduchého, popisného souboru kroků, které se nazývají „pokyny“. Každá instrukce vytváří v našem obrázku novou vrstvu. Pokyny zahrnují akce, jako je spuštění příkazu, přidání souboru nebo adresáře, jaký proces spustit při spouštění kontejneru z obrazu atd. Tento proces je stejný, jako byste nastavili řadu příkazů ve skriptu shellu. Jakmile požádáte o vytvoření obrázku, Docker přečte soubor dockeru, provede instrukce a vrátí finální obrázek.

Vytvoření obrázku Docker

Existují dva způsoby, jak vytvořit vlastní image Dockeru. Můžete si jej postavit na svém počítači nebo můžete použít Docker Hub, o kterém jsme hovořili dříve. V této části se naučíme, jak lokálně sestavit náš obraz Docker a poté jej publikovat v registru Docker Hub.

Místní vytváření pomocí souboru Dockerfile

Vytvoříme vlastní obrázek Dockeru pomocí obrázku "Whale say ", což je malý obrázek Dockeru (založený na obrázku Ubuntu), který když spustíte, říká něco, co jste naprogramovali, aby vám odpověděl.

Nejprve spusťte terminál a vytvořte novou složku zadáním:

mkdir mywhale

Tento adresář slouží jako „kontext“ pro vaše sestavení. Kontext pouze znamená, že obsahuje všechny věci, které potřebujete k úspěšnému budování své image.

Do své nové složky se dostanete pomocí:

cd mywhale

a vytvořte Dockerfile ve složce zadáním:

touch Dockerfile

Nyní byste měli vidět prázdný soubor Dockerfile, který jsme vytvořili, pokud zadáte příkaz 'll':

ll
$ ll
total 8.0K
-rw-rw-r-- 1 user user 0 23:26 Dockerfile

Otevřete jej pomocí svého oblíbeného textového editoru a přidejte:

FROM docker/whalesay:latest

Tento první řádek instrukce s klíčovým slovem FROM říká Dockeru, na kterém obrázku je váš obrázek založen. Svou novou práci zakládáte na existujícím obrázku whalesay.

Další instrukce, kterou přidáme, dá naší velrybě schopnost věštit. K provedení tohoto úkolu použijeme balíček fortune, který je dostupný v repozitářích Ubuntu (nezapomeňte, že obrázek velryby je založen na obrázku Ubuntu). Program Fortunes má příkaz, který vytiskne moudrá úsloví, aby je naše velryba řekla.

Takže prvním krokem je instalace. K tomu přidáme obvyklou instrukci pro instalaci apt:

RUN apt -y update && apt -y install fortunes

Jakmile má obrázek potřebný software, dáte softwaru pokyn, aby se spustil při načtení obrázku. K tomu přidáme následující pokyn:

CMD /usr/games/fortune -a | cowsay

Výše uvedený řádek říká programu Fortune, aby poslal náhodně vybranou nabídku do programu cowsay

A máme hotovo! Nyní soubor uložte a ukončete.
Můžete ověřit, co jste udělali spuštěním "cat Dockerfile", aby váš Dockerfile vypadal takto:

cat Dockerfile
FROM docker/whalesay:latest
RUN apt-get -y update && apt-get install -y fortunes
CMD /usr/games/fortune -a | cowsay

Nyní, když vše (doufejme) vypadá dobře, je čas vytvořit náš Docker Image (nezapomeňte na . tečku u příkazu a).:

docker build -t my-docker-whale .

Výše uvedený příkaz vezme soubor Dockerfile v aktuální složce a vytvoří na vašem místním počítači obraz s názvem „my-docker-whale“.

Můžete ověřit, že je váš obrázek Docker skutečně uložen ve vašem počítači pomocí:

docker images

Poté můžete spustit svůj obraz Docker zadáním následujícího:

docker run my-docker-whale

Jakmile se spustí, dostanete něco jako následující obrázek

Publikování vlastního obrázku dockeru na Docker Hub

Další možností je publikovat vytvořený obrázek Dockeru v úložišti Docker Hub. Chcete-li tak učinit, budete si muset vytvořit účet na přihlašovací webové stránce Docker Hub, kde zadáte jméno, heslo a e-mailovou adresu svého účtu. Měl bych také zdůraznit, že služba Docker Hub je zdarma pro veřejné obrázky dockerů. Jakmile vytvoříte svůj účet, můžete odeslat obrázek, který jste dříve vytvořili, a zpřístupnit jej ostatním k použití.

K tomu budete potřebovat ID a TAG vašeho obrázku „my-docker-whale“.

Spusťte znovu příkaz „docker images“ a poznamenejte si ID a TAG vašeho obrázku Dockeru, např. a69f3f5e1a31.

Nyní pomocí následujícího příkazu připravíme náš obrázek Dockeru na cestu do vnějšího světa (část příkazu název účtu je název vašeho účtu na stránce profilu Docker Hube):

docker tag a69f3f5e1a31 accountname/my-docker-whale:latest

Spusťte příkaz „docker images“ a ověřte svůj nově označený obrázek.

Dále použijte příkaz „docker login“ k přihlášení do Docker Hub z příkazového řádku.

Formát příkazu login je:

docker login --username=yourhubusername [email protected]

Až budete vyzváni, zadejte své heslo a stiskněte enter.

Nyní můžete poslat svůj obrázek do nově vytvořeného úložiště:

docker push accountname/my-docker-whale

Dokončení výše uvedeného příkazu může chvíli trvat v závislosti na šířce pásma nahrávání vašeho připojení, protože nahrává něco jako 180ΜΒ dat (v našem příkladu). Po dokončení můžete přejít do svého profilu na Docker Hub a prohlédnout si svůj nový obrázek.

Stažení vlastního obrázku

Pokud chcete stáhnout obrázek z úložiště Docker Hub, budete muset nejprve smazat původní obrázek z místního počítače, protože Docker by odmítl stáhnout obrázek z hubu, protože místní a vzdálené obrázky jsou totožné.

Jak si pamatujete z předchozího dílu, k odstranění obrazu dockeru musíte spustit příkaz „docker rmi“. K odstranění obrázku můžete použít ID nebo jméno:

docker rmi -f a69f3f5e1a31

Nyní, když je obrázek smazán, můžete obrázek stáhnout a načíst ze svého úložiště pomocí příkazu „docker run“ zadáním názvu svého účtu z Docker Hub.

docker run accountname/my-docker-whale

Protože jsme obrázek dříve smazali a v našem místním systému již nebyl dostupný, Docker jej stáhne a uloží na určené místo.

Přehled

V této části jsme se naučili, jak vytvořit soubor Docker, napsat několik základních pokynů a sestavení a obrázek pomocí něj jako receptu. Také jsme se zabývali základy vkládání našeho nového vlastního obrazu do registru Docker Hub a jeho stahováním do našeho místního počítače. V další části této série výukových programů Docker předvedu, jak můžeme automatizovat postup vytváření obrázků, abychom mohli okamžitě vytvářet vlastní obrázky, kdykoli je budeme potřebovat! Zůstaňte naladěni.


Docker
  1. Vytvořte, označte a nahrajte svůj vlastní obrázek dockeru

  2. Jak zabalit a přenést obrazy Dockeru z jednoho serveru na druhý

  3. Jak sdílet obrázky Docker s ostatními

  1. Jak upravit obrázky Docker

  2. Jak automaticky vytvářet a konfigurovat vlastní obrázky dockeru pomocí Dockerfile – část 3

  3. Jak vytvořit Docker Image z kontejneru a Dockerfile

  1. Docker:Jak jej používat v praxi - Část 3

  2. Začínáme s předpřipravenými obrázky Docker

  3. Jak přesunout obrazy Dockeru mezi hostiteli