Kao što možda već znate, postoji nekoliko vrsta virtualizacije, jedna od njih je virtualizacija na nivou operativnog sistema, a jedan od projekata koji se po tome najviše ističe je docker, zajedno s drugim projektima otvorenog koda kao što su OpenVZ, LXC / LXD, Linux-VServer itd., ili vlasnički softver Virtuozzo. Ako poznajete ovaj svijet ili ste redoviti korisnik ove vrste blogova, već ćete znati za projekt čiji je logo kit (otuda i naslov za one koji ga još uvijek ne znaju), a prije svega ćete primijetiti kako se posljednjih godina njegovo prisustvo u medijima i interes eksponencijalno povećavaju.
A to je da su ove nove tehnologije sadašnjost i budućnost, posebno s brutalnim rastom usluga u oblak o čemu smo govorili toliko puta. Docker, među mnogim drugim otvorenim izvorima i besplatnim projektima, omogućavaju ovo proširenje i velike mogućnosti koje zahtijevamo od oblaka. Ali šta je Docker? Šta je kontejner? Kako to radi?
Pristanište i kontejneri:
Iako odgovor je nešto složeniji i trebalo bi mi nekoliko ovih članaka, pokušat ću to sažeti. Međutim, ako trebate znati više o ovom fantastičnom projektu, postoje vrlo dobre knjige poput Alberta Gonzáleza, trenutnog savjetnika za oblake Red Hat. To je praktični vodič koji možete dobiti po pristupačnoj cijeni i u zemlji Amazon kao u agape. Pa, s tim rečeno, upoznajmo što je Docker.
Svi to znamo Kontejneri Oni su postali alat s puno potencijala u Linuxu, pa ih je moguće implementirati i njima upravljati zahvaljujući Docker softveru. Kontejneri nisu ništa drugo do izolirane "kutije" s osnovnim stvarima za pokretanje određenog programa ili aplikacije. To se može shvatiti kao lagana virtualna mašina, umjesto cjelovite i teške s kojom se radi u punoj virtualizaciji. Ovo smanjenje rezultira manjim troškovima.
Kontejneri donose i lakoću prenosivost, samodostatnost i fleksibilnost izuzetno poželjni od strane programera. Sve zahvaljujući LXC-u iz našeg omiljenog jezgra, Linuxu, te samom Docker projektu, sa njegovim spremnicima, slikama i spremištima. Upravo su te prednosti donijele uspjeh, što je primijećeno i sudjelovanjem nekih velikih kompanija u sektoru poput Googlea, Red Hat-a, IBM-a i Microsofta, kao i njegovom primjenom i dobrim prijemom u velikim kompanijama i oblaku usluge koje svi koristimo svakodnevno (AWS, Digital Ocean,…).
Instalirajte Docker korak po korak:
Imate nekoliko alternativa instalirati Docker, od dobivanja tarbola s izvornim kodom i kompajliranja, do preuzimanja binarnih datoteka iz različitih spremišta i upravljanja njima s upraviteljima paketa vašeg openSUSE distro, Ubuntu, Debian, CentOS, Fedora, itd. Možda je s binarnim paketima ugodnije, ali da tema ne bi bila predugačka, predstavit ću izravniju i univerzalniju metodu koja djeluje u bilo kojoj distribuciji:
sudo curl -fsSL https://get.docker.com/ | sh
Toliko jednostavno. Sad jesmo vrag i klijent, potonji će biti onaj koji komunicira s Docker demonom i omogućit će nam da radimo sve što ovaj softver nudi. Ali još uvijek postoji nešto za učiniti, a to je da se usluga ukine, odnosno pokrene Docker demon. Za systemd možete učiniti sljedeće:
sudo systemctl enable docker sudo systemctl start docker
Da je sve prošlo u redu, već će biti aktivan sve. Možete ga provjeriti sa:
sudo systemctl status docker
Možemo ga početi koristiti sada ...
Prvi koraci: stvaranje kontejnera
Pa, kao što već znate, kontejner To je paket sa svime što je potrebno za pokretanje jedne ili više aplikacija, odnosno slično virtualnoj mašini, ali lakši ovisno o hostu za izvršenje. Da bi spremnik mogao raditi, on mora imati potrebne biblioteke za izvršavanje, kao i određene zavisnosti, poput nekih alata operativnog sistema. Naravno, još jedan od potrebnih dijelova je runtime okruženje, odnosno izvršno okruženje kao što su tumači za protumačene jezike, JVM, datoteke s kodom ili binarnim datotekama itd.
Ima nekih osnovne naredbe Dockera s kojim ćete se "kretati" unutar okoline, prilično su brojni, poput informacija, umetanja, ubijanja, zaustavljanja, pokretanja, izrade, ps, itd. Da biste mogli vidjeti sve njih i čemu služi svaki od njih, sve što trebate je pokrenuti:
docker
Za više informacija možete se obratiti službena dokumentacija.
kako može? stvoriti spremnik s Dockerom? E, sad ćemo dati primjer, stvorit ćemo spremnik s Ubuntuom i za to koristimo naredbu run koja omogućava i stvaranje i izvršavanje spremnika (više informacija trči-h):
docker run -i -t ubuntu /bin/echo Prueba contenedor
A to će koristiti lokalnu sliku ako je već imamo ili ćemo je, ako je ne može pronaći, preuzeti. Šta više stvorit će spremnik, dodijelit će prostor za novi FS i montirati ga. Naravno da ćete dodijeliti mrežno sučelje za komunikaciju gost / domaćin. Jednom završeno, pokazat će nam odjek s rečenicom «Test kontejnera»To smo stavili.
Možete pogledajte sve slike šta imate sa:
docker images
I za suza jedan, možete koristiti ID spremnika sa:
docker start -a <pon-la-ID-del-container>
Da ih zaustavim, možete koristiti stop umjesto starta:
docker stop <pon-la-ID-del-container>
I ovo je samo osnova u Dockeru. Nadam se da vam je pomoglo da započnete i poduzmete prve korake mnogih, jer vam može pružiti mnogo mogućnosti. Kao što vidite, to je vrlo široka tema i u njoj možete dublje započeti s ovim uputstvom ili kupiti dodatne knjige poput one koja je spomenuta u prvim pasusima, a koju preporučujem zbog jednostavnosti u praktičnim objašnjenjima. Ne zaboravite ostaviti komentare...
Zanimljivo, radujem se sledećim člancima, hvala