Docker

Prečo Docker?

Prečo Docker?

Čo sú mikroslužby?

Pred diskusiou o Dockerovi je dôležité pochopiť, čo sú mikroslužby. Zvážte veľmi veľkú aplikáciu, ktorá je rozdelená na menšie služby. Každú z týchto služieb možno nazvať ako mikroslužby. Mikroslužby sú malé procesy, ktoré navzájom komunikujú prostredníctvom siete. Zvážte napríklad aplikáciu na nakupovanie online, ktorú je možné rozdeliť na menšie mikroslužby, ako je služba používateľských účtov, katalóg produktov, server objednávok a server nákupného košíka.

Existujú tri hlavné dôvody pre prijatie architektúry mikroslužieb.

  1. Ak sú aplikácie rozdelené na menšie služby, je ľahšie ich zostaviť a udržiavať.
  2. Ak chcete aktualizovať konkrétny softvér alebo chcete v jednom zo svojich modulov alebo služieb nový zásobník technológií, je to ľahké, pretože problémy so závislosťou sú menšie v porovnaní s aplikáciou ako celkom.
  3. Ak niektorý z vašich modulov alebo služieb zlyhá, vaša celková aplikácia zostane nedotknutá.

Existuje tiež niekoľko problémov s prijatím architektúry mikroslužieb. Pri vývoji veľkej aplikácie, ktorá vyžaduje niekoľko mikroslužieb v jednom počítači, budete vyžadovať rovnaký počet virtuálnych počítačov ako mikroslužby. Každý z týchto virtuálnych počítačov obsahuje závislosti pre jednu mikroslužbu. Hlavnou nevýhodou je, že vo virtuálnom stroji dochádza k veľkému plytvaniu prostriedkami, ako sú RAM, procesor a miesto na disku, ktoré mikroslužby bežiace na týchto virtuálnych počítačoch úplne nevyužívajú. Toto nie je ideálny spôsob implementácie architektúry mikroslužieb. V takom prípade prichádza na rad Docker.

Docker a mikroslužby

Docker rieši tento problém s neefektívnosťou spustením niekoľkých mikroslužieb na rovnakom VM spustením rôznych kontajnerov pre každú mikroslužbu. Docker je aplikácia typu open-source, ktorá vám pomáha vytvárať, nasadzovať a spúšťať aplikácie pomocou kontajnera. Kontajnery Docker sú malé a ľahké alternatívy virtuálnych počítačov, ktoré využívajú hostiteľský operačný systém a spotrebujú relatívne menej prostriedkov.

Aby ste porozumeli Dockerovi, musíte najskôr pochopiť, aké je vyhlásenie o probléme, ktoré sa Docker snaží vyriešiť. Problém je v tom, že po navrhnutí projektu by mohol spočiatku bežať vo vašom systéme úplne v poriadku, ale má problémy s otvorením v iných systémoch a serveroch. Len čo presuniete projekt do výrobnej fázy, na počítači niekoho iného alebo na inom serveri, projekt nebude vykazovať rovnakú úroveň výkonu, rovnakú úroveň práce alebo rovnakú optimalizáciu, ani keď presuniete tento projekt z jedného miesto do druhého.

Napríklad keď vyvíjate web pomocou ASP.net alebo PHP, a pracujete na tom a presuniete projekt na webový server, môžu sa vyskytnúť určité nejasnosti. Patria sem aj obrázky, ktoré sa nenačítavajú správne, alebo možno malý rozdiel alebo závada v ceste. Na vývojárskom stroji môže všetko fungovať perfektne, ale pri prechode na iný stroj nemusí fungovať rovnako.

Ako funguje Docker?

Docker je špeciálne navrhnutý na riešenie problému „Funguje to na mojom stroji“. Docker je kompatibilný s takmer všetkými populárnymi programovacími jazykmi a bežnými projektmi, na ktorých možno pracujete. So spoločnosťou Docker si môžete byť istí, že získate kontajner, ktorý je absolútne tesne uzavretý, a tieto vzduchotesné kontajnery sú jadrom Dockeru. Tento kontajner obsahuje celý váš kód a dobrá vec je, že sú úplne prenosné. Kontajner Docker si môžete vziať kamkoľvek a funguje rovnako ako na vašom vlastnom počítači.

Docker vám tiež umožňuje mať sociálne kontajnery. Pojem „sociálny kontajner“ znamená, že tieto kontajnery je možné zverejniť na platformách sociálnych médií. Napríklad pri učení sa MySQL sa vám môže zdať náročné nainštalovať základné MySQL. Inštalácia tohto programu do vášho systému môže byť v skutočnosti jednou z hlavných výziev, ktorým čelíte, ale dá sa ľahko vykonať pomocou Dockeru.

Takže Docker je softvér, prostredníctvom ktorého vytvárate kontajnery. Tieto kontajnery navyše obsahujú množstvo užitočných funkcií a nástrojov. Tieto kontajnery sú zabalené s kódom, závislosťami, konfiguráciou, procesmi, sieťovými informáciami a obsahujú tiež časti operačného systému zodpovedného za vylepšenie vášho kódu.

Čo robí Docker?

Docker možno rozdeliť do troch základných funkcií:

Docker obsahuje mnoho funkcií vrátane návrhu vášho kontajnera.  Všetky vaše kódy a konfigurácia sú už zabalené a môžete ich presunúť kamkoľvek chcete.

Docker môže fungovať ako služba, takže ju možno nasadiť na akýkoľvek iný server. Môžete ho nasadiť na akékoľvek miesto podľa vášho výberu podľa výberu jednoducho tým, že vezmete svoj kontajner.

Môžete zdieľať obrázky Dockeru ako každú inú položku, ktorú môžete zdieľať na sociálnych sieťach. Pre každého, kto chce začať od konkrétneho bodu programovania, môže začať kedykoľvek a kdekoľvek chce. Docker je spoločnosť, ktorá za vás spravuje a robí všetky tieto veci.

Záver

Tento článok pojednáva o tom, prečo potrebujete Dockera ako programátora a čo pre vás Docker môže urobiť. S pomocou Dockeru môžete hostiť viac aplikácií na rovnakom hardvéri, čo vám uľahčí rýchle vytváranie kontajnerových aplikácií pripravených na spustenie.

Hry Najlepšie aplikácie na mapovanie gamepadu pre Linux
Najlepšie aplikácie na mapovanie gamepadu pre Linux
Ak radi hráte hry v systéme Linux s gamepadom namiesto typického systému vstupu pre klávesnicu a myš, máte tu niekoľko užitočných aplikácií. Mnoho hie...
Hry Užitočné nástroje pre hráčov systému Linux
Užitočné nástroje pre hráčov systému Linux
Ak radi hráte hry v systéme Linux, je pravdepodobné, že ste na vylepšenie herného zážitku použili aplikácie a pomôcky ako Wine, Lutris a OBS Studio. O...
Hry HD remasterované hry pre Linux, ktoré nikdy predtým nemali vydanie Linuxu
HD remasterované hry pre Linux, ktoré nikdy predtým nemali vydanie Linuxu
Mnoho vývojárov a vydavateľov hier prichádza s remastrom starých hier v rozlíšení HD, aby predĺžili životnosť franšízy. Prosím fanúšikov, ktorí požadu...