Architektúra doku a jej komponenty pre začiatočníkov

Oboznámime sa s architektúrou Docker a jej základnými komponentmi.


Predpokladám, že ovládate Dockera. Ak nie, môžete sa odvolať na predchádzajúci článok.

Pochopenie doku pre začiatočníkov – technológie kontajnerov

Verím, že chápete dôležitosť Dockera v DevOps. Teraz za týmto fantastickým nástrojom musí existovať úžasná premyslená architektúra. Nie je to tak?

Ale predtým, ako o tom budem hovoriť, dovoľte mi predstaviť predchádzajúci a súčasný virtualizačný systém.

Tradičná verzus virtualizácia novej generácie

Predtým sme tvorili virtuálne stroje a každý VM mal operačný systém, ktorý zabral veľa miesta a spôsobil ho ťažkým.

Teraz v prípade kontajnerového kontajnera máte jediný operačný systém a prostriedky sa medzi kontajnermi zdieľajú. Preto je ľahký a topánky behom niekoľkých sekúnd.

Tradičné verzus nové gen

Docker Architecture

Nižšie je uvedený jednoduchý diagram architektúry Docker.

Docker Architecture

Dovoľte mi vysvetliť vám komponenty architektúry doku.

Dockerov motor

Je základnou súčasťou celého systému Docker. Docker Engine je aplikácia, ktorá nasleduje architektúra klient-server. Je nainštalovaný na hostiteľskom počítači. Dockerov motor obsahuje tri komponenty:

  • server: Nazýva sa dokovací démon dockerd. Dokáže vytvárať a spravovať obrázky doku. Kontajnery, siete atď.
  • Rest API: Používa sa na to, aby dal démonovi ukradnúť, čo má robiť.
  • Rozhranie príkazového riadku (CLI): Je to klient, ktorý sa používa na zadávanie príkazov docker.

Docker Client

Používatelia Docker môžu s Dockerom komunikovať prostredníctvom klienta. Keď sa spustia nejaké príkazy docker, klient ich odošle do démona dockerd, ktorý ich vykoná. Docker API sa používa v príkazoch Docker. Klient Docker môže komunikovať s viac ako jedným démonom.

Registre dokov

Je to miesto, kde sú uložené obrázky Docker. Môže to byť verejný dokovací register alebo súkromný dokovací register. Docker Hub je predvolené miesto obrázkov doku, verejného registra jeho obchodov. Môžete si tiež vytvoriť a spustiť svoj vlastný súkromný register.

Keď spustíte príkazy pull a ukotvenia doku, požadovaný obrázok doku sa vytiahne z nakonfigurovaného registra. Keď vykonáte príkaz push docker, obraz docker sa uloží do nakonfigurovaného registra.

Dokovacie objekty

Pri práci s Dockerom používate obrázky, kontajnery, zväzky, siete; to všetko sú Dockerove objekty.

snímky

Obrázky doku sú šablóny len na čítanie s pokynmi na vytvorenie doku. Obrázok doku môžete vytiahnuť z doku a použiť ho tak, ako je, alebo môžete k základnému obrázku pridať ďalšie pokyny a vytvoriť nový a upravený obrázok ukotvenia. Svoje vlastné obrázky doku si môžete vytvoriť aj pomocou súboru ukotvenia. Vytvorte súbor docker so všetkými pokynmi na vytvorenie kontajnera a jeho spustenie; vytvorí váš vlastný obrázok v doku.

Obrázok doku má základnú vrstvu, ktorá je iba na čítanie a hornú vrstvu možno zapísať. Keď upravíte a obnovíte súbor docker, v hornej vrstve sa znova vytvorí iba upravená časť.

kontajnery

Po spustení obrázka doku sa vytvorí kontajner doku. Vo vnútri tohto kontajnera bežia všetky aplikácie a ich prostredie. Na spustenie, zastavenie a odstránenie kontajnerového doku môžete použiť Docker API alebo CLI.

Nižšie je uvedený ukážkový príkaz na spustenie dokovacieho kontajnera ubuntu:

docker run -i -t ubuntu / bin / bash

zväzky

Pretrvávajúce údaje generované dokovacou stanicou a používané kontajnermi Docker sú uložené v zväzkoch. Doky sú úplne spravované prostredníctvom dokovacieho rozhrania CLI alebo Docker API. Zväzky fungujú na kontajneroch Windows aj Linux. Namiesto trvalých údajov v zapisovateľnej vrstve kontajnera je vždy dobrou voľbou použiť pre ne objemy. Obsah zväzku existuje mimo životného cyklu kontajnera, takže použitie zväzku nezvýši veľkosť kontajnera.

Na spustenie kontajnera so zväzkom môžete použiť príznak -v alebo -mount. V tomto vzorovom príkaze používate zväzok geekvolume s kontajnerom geekflare.

docker run -d –name geekflare -v geekvolume: / app nginx: latest

siete

Dokovacia sieť je priechod, cez ktorý komunikujú všetky izolované kontajnery. V dokovacej stanici sa nachádza hlavne päť sieťových ovládačov:

  1. Most: Je to predvolený sieťový ovládač pre kontajner. Túto sieť používate, keď je vaša aplikácia spustená na samostatných kontajneroch, t. J. Na viacerých kontajneroch komunikujúcich s tým istým hostiteľom doku.
  2. Hostiteľ: Tento ovládač odstráni izoláciu siete medzi dokovacími kontajnermi a dokovacím hostiteľom. Používa sa, keď nepotrebujete žiadnu sieťovú izoláciu medzi hostiteľom a kontajnerom.
  3. obložiť: Táto sieť umožňuje vzájomnú komunikáciu rojových služieb. Používa sa, keď sú kontajnery spustené na rôznych hostiteľoch Docker alebo keď sú rojové služby tvorené viacerými aplikáciami.
  4. nikto: Tento ovládač zakáže všetky siete.
  5. macvlan: Tento ovládač priradí kontajnerom adresu mac, aby vyzerali ako fyzické zariadenia. Prevádzka je smerovaná medzi kontajnermi prostredníctvom ich mac adries. Táto sieť sa používa, keď chcete, aby kontajnery vyzerali napríklad ako fyzické zariadenie, napríklad pri migrácii nastavenia VM.

záver

Dúfam, že vám to poskytne predstavu o architektúre Docker a jej základných komponentoch. Ak sa chcete dozvedieť viac, prejdite okolo Dockera a ak máte záujem o praktické školenie, vyskúšajte to Docker Mastery kurz.

Tagy:

  • prístavný robotník

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map