Docker Architecture i els seus components per a principiants

Ens familiaritzem amb l’arquitectura Docker i els seus components essencials.


Suposo que teniu una comprensió bàsica de Docker. Si no, és possible que es refereixi a l’article anterior.

Comprendre Docker per a principiants: la tecnologia de contenidors

Crec que enteneu la importància de Docker a DevOps. Ara darrere d’aquesta fantàstica eina, hi ha d’haver una arquitectura sorprenent i ben pensada. No ho és?

Però abans de parlar d’això, deixa’m mostrar el sistema de virtualització anterior i actual.

Virtualització tradicional i de nova generació

Anteriorment, abans creàvem màquines virtuals i cada màquina virtual tenia un sistema operatiu que ocupava molt espai i el feia pesat.

Ara, en el cas dels contenidors del docker, teniu un sol sistema operatiu i els recursos es comparteixen entre els contenidors. Per tant, és lleuger i arrenca en pocs segons.

Tradicional vs Nou Gen

Docker Architecture

A continuació es mostra el esquema senzill d’una arquitectura Docker.

Docker Architecture

Permeteu-me que us expliqui els components d’una arquitectura docker.

Motor d’acoplament

És la part principal de tot el sistema Docker. Docker Engine és una aplicació que segueix arquitectura client-servidor. S’instal·la a la màquina host. Hi ha tres components al motor Docker:

  • Servidor: És el dimoni docker anomenat atracador. Pot crear i gestionar imatges de docker. Contenidors, xarxes, etc.
  • API de descans: S’utilitza per instruir el dimoni docker què fer.
  • Interfície de la línia de comandaments (CLI): És un client que s’utilitza per introduir ordres de docker.

Client docker

Els usuaris de Docker poden interactuar amb Docker mitjançant un client. Quan s’executen qualsevol ordre docker, el client les envia al daemon dockerd, que les porta a terme. Les comandes Docker les utilitza l’API Docker. El client Docker es pot comunicar amb més d’un dimoni.

Registres de docker

És la ubicació on s’emmagatzemen les imatges de Docker. Pot ser un registre públic d’atacadors o un registre d’atacador privat. Docker Hub és el lloc predeterminat de les imatges docker, el registre públic de les seves botigues. També podeu crear i executar el vostre propi registre privat.

Quan executeu ordres de docker pull o docker run, la imatge de docker requerida s’extreu del registre configurat. Quan executeu la comanda push docker, la imatge docker es desa al registre configurat.

Objectes atracadors

Quan treballeu amb Docker, utilitzeu imatges, contenidors, volums, xarxes; tot això són objectes Docker.

Imatges

Les imatges Docker són plantilles de només lectura amb instruccions per crear un contenidor docker. La imatge de Docker es pot extreure d’un nucli Docker i utilitzar-la tal com és, o bé podeu afegir instruccions addicionals a la imatge base i crear una imatge nova i modificada. Podeu crear les vostres pròpies imatges docker també mitjançant un dockerfile. Creeu un fitxer docker amb totes les instruccions per crear un contenidor i executar-lo; crearà la vostra imatge personalitzada del docker.

La imatge Docker té una capa base que és de només lectura i es pot escriure la capa superior. Quan editeu un dockerfile i el reconstruiu, només es reconstruirà la part modificada a la capa superior.

Contenidors

Després d’executar una imatge docker, crea un contenidor docker. Totes les aplicacions i el seu entorn funcionen dins d’aquest contenidor. Podeu utilitzar l’API Docker o la CLI per iniciar, aturar i suprimir un contenidor de docker.

A continuació, es mostra una ordre d’exemple per executar un contenidor docker ubuntu:

docker run -i -t ubuntu / bin / bash

Volums

Les dades persistents generades per Docker i utilitzades pels contenidors Docker es guarden a Volums. Són gestionats completament per docker mitjançant Docker CLI o Docker API. Els volums funcionen tant en contenidors Windows com Linux. En lloc de persistir les dades de la capa escrivible d’un contenidor, sempre és una bona opció utilitzar-ne volums. El contingut del volum existeix fora del cicle de vida d’un contenidor, de manera que utilitzar volum no augmenta la mida d’un contenidor.

Podeu utilitzar el senyalador -v o -mount per iniciar un contenidor amb un volum. En aquesta comanda d’exemple, feu servir el volum de geekvolume amb el contenidor geekflare.

docker run -d – nom geekflare -v geekvolume: / app nginx: més recent

Xarxes

La xarxa docker és un passatge pel qual es comuniquen tots els contenidors aïllats. Principalment hi ha cinc controladors de xarxa al docker:

  1. Pont: És el controlador de xarxa predeterminat per a un contenidor. Utilitzeu aquesta xarxa quan la vostra aplicació s’està executant en contenidors autònoms, és a dir, en diversos contenidors que es comuniquen amb el mateix amfitrió.
  2. Amfitrió: Aquest controlador elimina l’aïllament de la xarxa entre els contenidors del docker i l’amfitrió del docker. S’utilitza quan no necessiteu cap aïllament de xarxa entre host i contenidor.
  3. Superposició: Aquesta xarxa permet als serveis d’eixams comunicar-se entre ells. S’utilitza quan els contenidors s’estan executant en diferents host Docker o quan els serveis d’eixams estan formats per diverses aplicacions.
  4. Cap: Aquest controlador inhabilita tota la xarxa.
  5. macvlan: Aquest controlador assigna adreça mac als contenidors per fer-los semblar dispositius físics. El trànsit s’encamina entre els contenidors a través de les seves adreces mac. Aquesta xarxa s’utilitza quan voleu que els contenidors semblin un dispositiu físic, per exemple, mentre migre una configuració de VM.

Conclusió

Espero que això us doni una idea sobre l’arquitectura Docker i els seus components essencials. Aneu a navegar per Docker per obtenir més informació i, si esteu interessats en obtenir formació pràctica, consulteu-ho Curs de domini de Docker.

Tags:

  • Atracador

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