Docker építészet és alkotóelemei kezdőknek

Ismerkedjünk meg a Docker architektúrával és annak alapvető alkotóelemeivel.


Feltételezem, hogy alapvető ismereteitek vannak a Dockerről. Ha nem, utalhat az előző cikkre.

A dokkoló megértése kezdőknek – a konténer technológia

Azt hiszem, megértette a Docker fontosságát a DevOps-ban. E fantasztikus eszköz mögött egy csodálatos, jól átgondolt architektúrának kell lennie. Nem igaz??

De mielőtt erről beszélek, hadd mutassam be az előző és a jelenlegi virtualizációs rendszert.

Hagyományos és új generációs virtualizáció

Korábban virtuális gépeket készítettünk, és mindegyik virtuális gépnek volt egy operációs rendszere, amely sok helyet foglalott el és nehezített.

A dokkoló tároló esetében most egy operációs rendszer van, és az erőforrások meg vannak osztva a tárolók között. Ezért könnyű és másodpercek alatt elindul.

Hagyományos vs Új Gen

Docker építészet

Az alábbiakban a Docker architektúra egyszerű diagramja látható.

Docker építészet

Hadd magyarázzam meg a dokkoló architektúra összetevőit.

Docker motor

Ez a teljes Docker rendszer központi része. A Docker Engine egy olyan alkalmazás, amelyet követ kliens-szerver architektúra. Telepítve van a gazdagépen. A Docker Engine három összetevőt tartalmaz:

  • szerver: Ez az úgynevezett dokkoló démon dockerd. Dokumentumképeket hozhat létre és kezelhet. Konténerek, hálózatok stb.
  • Rest API: A dokkoló démont arra utasítja, hogy mit kell tenni.
  • Parancssori felület (CLI): Ez egy ügyfél, amellyel dokkolóparancsokat adhat meg.

Docker kliens

A Docker felhasználók ügyfeleken keresztül léphetnek kapcsolatba a Dockerrel. Bármely dokkolóparancs futtatásakor az ügyfél elküldi őket a dockerd démonhoz, amely végrehajtja azokat. A Docker API-t a Docker parancsok használják. A Docker kliens egynél több démonnal is képes kommunikálni.

Docker nyilvántartások

Ez a hely, ahol a Docker képeket tárolják. Lehet nyilvános dokkoló nyilvántartás vagy magán dokkoló nyilvántartás. A Docker Hub a dokkolóképek alapértelmezett helye, az áruházak nyilvános nyilvántartása. Saját magánnyilvántartást is létrehozhat és futtathat.

Amikor dokkoló húzási vagy dokkoló futási parancsokat hajt végre, a szükséges dokkoló kép ki lesz húzva a konfigurált beállításjegyzékből. A dokkoló push parancs végrehajtásakor a dokkoló kép a konfigurált beállításjegyzékben kerül tárolásra.

Dokkoló objektumok

Amikor a Dockerrel dolgozik, képeket, tárolókat, köteteket, hálózatokat használ; ezek mind Docker objektumok.

képek

A Docker képek csak olvasható sablonok, amelyek tartalmaznak utasításokat a dokkoló tároló létrehozásához. A Docker képet le lehet húzni a Docker hubból és felhasználhatja, ahogy van, vagy hozzáadhat további utasításokat az alapképhez, és létrehozhat egy új és módosított dokkoló képet. Saját dokkolóképeket is létrehozhat docker fájl segítségével. Hozzon létre egy dockerfájlt az összes utasítással egy tároló létrehozásához és futtatásához; ez elkészíti az egyedi dokkolóképét.

A Docker képnek van egy csak olvasható alaprétege, és a felső réteg is írható. A docker-fájl szerkesztése és újbóli felépítésekor csak a módosított rész kerül a felső rétegbe.

konténerek

A dokkolókép futtatása után létrehoz egy dokkoló tárolót. Az összes alkalmazás és környezetük ezen a tárolón belül fut. A Docker API vagy CLI használatával elindíthatja, leállíthatja és törölheti a dokkoló tárolót.

Az alábbiakban található egy példaparancs egy ubuntu dokkoló tároló futtatására:

docker run -i -t ubuntu / bin / bash

kötetek

A docker által generált és a Docker tárolók által használt, fennmaradó adatokat a kötetek tárolják. A docker teljesen kezeli őket a docker CLI vagy a Docker API segítségével. A kötetek mind Windows, mind Linux tárolókon működnek. Ahelyett, hogy az adatokat megőriznénk egy tároló írható rétegében, mindig jó lehetőség a kötetek felhasználása ehhez. A kötet tartalma kívül esik egy tároló életciklusán, tehát a kötet használata nem növeli a tároló méretét.

Használhatja a -v vagy –mount zászlót egy kötettel rendelkező tároló elindításához. Ebben a mintaparancsban a geekvolume mennyiséget használja a geekflare tárolóval.

docker run -d – name geekflare -v geekvolume: / app nginx: legújabb

Networks

A Docker hálózatépítés olyan átjáró, amelyen keresztül az összes elkülönített tartály kommunikál. Főleg öt hálózati illesztőprogram van a dockerben:

  1. Híd: Ez a tároló alapértelmezett hálózati illesztőprogramja. Ezt a hálózatot akkor használja, amikor az alkalmazás önálló tárolókon fut, vagyis több tároló kommunikál ugyanazon dokkológéppel.
  2. Házigazda: Ez az illesztőprogram eltávolítja a hálózati szigetelést a dokkoló tárolók és a dokkoló gazdagép között. Ezt akkor használják, amikor nincs szüksége hálózati szigetelésre a gazdagép és a tároló között.
  3. borítás: Ez a hálózat lehetővé teszi a rajszolgáltatók közötti kommunikációt. Akkor használják, amikor a konténerek különböző Docker gazdagépeken futnak, vagy ha a rajszolgáltatásokat több alkalmazás hozza létre.
  4. Egyik sem: Ez az illesztőprogram letiltja az összes hálózatot.
  5. macvlan: Ez az illesztőprogram hozzáfűzi a mac címet a tárolókhoz, hogy fizikai eszközökké hasonlítsanak. A forgalom a konténerek között a mac címeken keresztül irányul. Ezt a hálózatot akkor használják, amikor azt akarja, hogy a tárolók fizikai eszköznek tűnjenek, például a virtuális gép beállítása közben.

Következtetés

Remélem, ez ad ötletet a Docker architektúráról és annak alapvető elemeiről. Navigáljon a Docker környékén, hogy többet megtudjon, és ha érdekli a gyakorlati képzés, akkor nézd meg ezt Dokkoló mesterképzés.

CÍMKÉK:

  • Dokkmunkás

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