Docker arhitektura i njezine komponente za početnike

Upoznajmo se s Docker arhitekturom i njezinim bitnim komponentama.


Pretpostavljam da temeljno razumijete Dockera. Ako ne, možete se obratiti prethodnom članku.

Razumijevanje Dockera za početnike – tehnologija kontejnera

Vjerujem da razumijete važnost Dockera u DevOpsu. Sada iza ovog fantastičnog alata mora postojati nevjerojatna, dobro osmišljena arhitektura. Zar ne?

Ali prije nego što govorim o tome, dopustite mi da pokažem prethodni i trenutni sustav virtualizacije.

Tradicionalna virtualizacija nasuprot novoj generaciji

Ranije smo izrađivali virtualne strojeve, a svaki VM imao je OS koji je zauzimao puno prostora i otežao ga.

Sada u slučaju spremnika konzola imate jedan OS, a resursi se dijele između spremnika. Stoga je lagana i čizma u sekundi.

Tradicionalni vs novi gen

Docker arhitektura

Ispod je jednostavan dijagram Dockerove arhitekture.

Docker arhitektura

Dopustite da vam objasnim sastavnice docker arhitekture.

Docker Engine

To je temeljni dio cijelog Docker sustava. Docker Engine je aplikacija koja slijedi klijent-poslužitelj arhitektura. Instaliran je na glavnom stroju. U Docker Engineu su tri komponente:

  • server: To je dockerski demon dockerd. Može stvoriti i upravljati slikama doktora. Kontejneri, mreže itd.
  • API odmora: Koristi se za poučavanje dakera dakera što učiniti.
  • Sučelje naredbenog retka (CLI): To je klijent koji se koristi za unos docker naredbi.

Klijent Docker

Korisnici Dockera mogu komunicirati s Dockerom putem klijenta. Kad se pokrenu bilo koje docker naredbe, klijent ih šalje dockerd demonu, koji ih provodi. Docker API koristi se Docker naredbama. Docker klijent može komunicirati s više demona.

Docker Registri

To je mjesto na kojem se pohranjuju Docker slike. To može biti javni registar doktora ili privatni registar. Docker Hub je zadano mjesto slika dockera, javni registar njegovih trgovina. Također možete stvoriti i pokrenuti vlastiti privatni registar.

Kada izvršavate naredbe za izvlačenje docker-a ili docker-a, potrebna konfiguracija dockera se izvlači iz konfiguriranog registra. Kada izvršite naredbu za potiskivanje dokera, slika dokera sprema se u konfigurirani registar.

Docker objekti

Kada radite s Dockerom, koristite slike, spremnike, sveske, mreže; sve su to Dockerovi objekti.

slike

Slike dockera predstavljaju predloške samo za čitanje s uputama za stvaranje spremnika za dockere. Docker sliku možete izvući iz Docker koncentratora i koristiti je onakvom kakva jest, ili možete dodati dodatne upute osnovnoj slici i stvoriti novu i modificiranu sliku doktora. Svoje docker slike možete stvoriti i pomoću dockerfile-a. Napravite dockerfile sa svim uputama za stvaranje spremnika i pokretanje ga; to će stvoriti vašu prilagođenu sliku doktora.

Docker slika ima osnovni sloj koji je samo za čitanje, a gornji se sloj može upisati. Kada uredite dockerfile i ponovo ga izgradite, samo se modificirani dio ponovno izgrađuje u gornjem sloju.

kontejneri

Nakon što pokrenete docker sliku, stvara spremnik docker. Sve aplikacije i njihovo okruženje pokreću se unutar ovog spremnika. Možete koristiti Docker API ili CLI za pokretanje, zaustavljanje i brisanje spremnika za docker.

Ispod je primjer uzorka za pokretanje ubuntu spremnika docker:

docker run -i -t ubuntu / bin / bash

volumeni

Trajni podaci koje generira docker i koriste Docker spremnici pohranjuju se u sveske. U potpunosti ih upravlja docker putem docker CLI ili Docker API. Količine rade i na Windows i Linux spremnicima. Umjesto postojanja podataka u sloju koji se može zapisati, spremna je količina volumena za njega. Sadržaj volumena postoji izvan životnog ciklusa spremnika, tako da upotreba volumena ne povećava veličinu spremnika.

Za pokretanje spremnika s volumenom možete koristiti -v ili –mount zastavicu. U ovoj naredbi uzorka koristite geekvolume volumen s spremnikom geekflare.

docker run -d –ime geekflare -v geekvolume: / app nginx: najnovije

mreže

Mreža dokera prolaz je kroz koji komuniciraju svi izolirani spremnici. U dockeru je uglavnom pet mrežnih pokretača:

  1. Most: To je zadani mrežni pogon za spremnik. Ovu mrežu koristite kada se vaša aplikacija pokreće na samostalnim kontejnerima, tj. Više spremnika koji komuniciraju s istim host dockerom.
  2. Domaćin: Ovaj upravljački program uklanja mrežnu izolaciju između spremnika dockera i host dockera. Koristi se kada vam nije potrebna mrežna izolacija između domaćina i spremnika.
  3. prekriti: Ova mreža omogućuje međusobnoj komunikaciji roj uslugama. Koristi se kada se spremnici pokreću na različitim Docker domaćinima ili kada se usluge roj-a formiraju u više aplikacija.
  4. nijedan: Ovaj vozač onemogućuje svu umreženost.
  5. macvlan: Ovaj upravljački program dodjeljuje mac adresu spremnicima kako bi izgledali kao fizički uređaji. Promet se preusmjerava između kontejnera preko njihovih mac adresa. Ova se mreža koristi kada npr. Želite da spremnici izgledaju kao fizički uređaj, dok migriraju VM postavku.

Zaključak

Nadam se da vam ovo daje predstavu o Dockerovoj arhitekturi i njezinim bitnim komponentama. Prijeđite Dockerom da biste saznali više, a ako ste zainteresirani za praktični trening, pogledajte ovo Tečaj docker majstorstva.

OZNAKE:

  • Lučki radnik

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