Savladajte osnove Dockera s ovim važnim konceptima objašnjenim jednostavnim riječima.

Ovladavanje Dockerom je tražena vještina za inženjere pozadinskog softvera. Docker će vam pomoći u izgradnji, pakiranju i distribuciji aplikacija.

Dockerizirane aplikacije mogu se izvoditi u različitim okruženjima. Ovo smanjuje vrijeme prekida rada aplikacije dajući tvrtkama konkurentsku prednost. Ali Docker može biti zastrašujući kada ga počnete učiti. Evo ključnih tema za naučiti svladati Docker.

Što je Docker?

Docker je softver koji se koristi za pakiranje aplikacija u izvršne jedinice koje se nazivaju spremnici. Docker pruža podršku za brzu izradu, testiranje i implementaciju aplikacija.

Kada koristite Docker, komunicirate s Docker Engineom. Docker Engine možete instalirati na bilo koji operativni sustav, uključujući Windows 10 i 11, macOS, ili Ubuntu/Linux sustavi. Postoje mnogi alati i koncepti koje trebate naučiti da biste učinkovito koristili Docker. Evo najbitnijih za početak.

1. Docker slika

Docker slika je lagani nacrt koji se koristi za stvaranje spremnika. To je predložak uputa koje specificiraju operativni sustav, kod aplikacije i ovisnosti. Vi definirate upute o tome kako izgraditi sliku na Docker datoteci.

instagram viewer

U datoteci navedite sve što je potrebno vašoj prijavi. Docker zatim automatski gradi sliku na temelju priloženih uputa. Možete pronaći razne slike u Dockerovom mrežnom registru, Docker Hub. Docker preporučuje korištenje službenih slika iz sigurnosnih razloga.

Također možete izraditi slike na temelju prilagođenih konfiguracija. Slike dolaze u različitim veličinama, operativnim sustavima i jezicima. Možete odabrati onaj koji najbolje odgovara vašoj aplikaciji. Na primjer, možete naučiti kako izgraditi Docker sliku .NET web API-ja.

2. Docker kontejner

Spremnici su jedinice koje se koriste za pakiranje aplikacije u izvršnu jedinicu. Spremnici uključuju sve što je potrebno za pokretanje aplikacije, uključujući biblioteke, kod, ovisnosti i vrijeme izvođenja.

Spremnici izoliraju aplikacije u jedinice omogućujući im dosljedan rad u različitim okruženjima. Spremnici vam omogućuju upravljanje aplikacijama u razvojnim i produkcijskim okruženjima bez nailaska na pogreške. Tamo su mnogi slučajevi upotrebe spremnika koje možete istražiti.

Docker spremnici imaju pojedinosti poput ID-a spremnika, slike i osnovnog operativnog sustava. Također možete vidjeti vrijeme izvođenja, status i naziv spremnika. Za popis svih spremnika u vašem sustavu koristite sljedeću naredbu:

docker container ls

Vidjet ćete pojedinosti o svim aktivnim spremnicima:

Također možete koristiti docker ps za pregled svih spremnika koji rade. I docker pregled spremnika [ID spremnika] za pregled sadržaja spremnika.

4. Dockerfile

Dockerfile je dokument koji navodi upute o tome kako izgraditi Docker sliku. Datoteka navodi osnovnu sliku, kod aplikacije i datoteke potrebne za izradu slike.

Datoteka također uključuje varijable okoline i naredbe za stvaranje slike. Dockerfile možete izraditi kao bilo koju drugu datoteku. Morate navesti upute u datoteci koristeći sintaksu koju Docker razumije. Slijedi primjer ogledne Docker datoteke:

5. Docker Compose

Docker Compose je alat za definiranje i pokretanje Docker aplikacija s više spremnika. Sve usluge konfigurirate u YAML datoteci. YAML datoteka je dokument u kojem navodite potrebne usluge za svoju aplikaciju. Zatim možete stvoriti i pokrenuti sve usluge pomoću jedne naredbe.

Docker Compose može pokretati aplikacije u različitim okruženjima. To mogu biti okruženja za proizvodnju, prikazivanje, razvoj ili testiranje. Docker Compose pojednostavljuje složeni proces orkestriranja više spremnika.

Docker Compose možete koristiti za upravljanje aplikacijom tijekom njenog životnog ciklusa. To može uključivati ​​usluge pokretanja, zaustavljanja i ponovne izgradnje. Također možete vidjeti status pokrenutih usluga, izlaz dnevnika toka i pokrenuti naredbe na usluzi.

Uz Docker Compose možete konfigurirati mreže, upravljati volumenima i odrediti ovisnosti. Također možete vodoravno skalirati aplikacije u proizvodnji određivanjem usluga replike.

Compose pojednostavljuje implementaciju složenih aplikacija u različita okruženja. Također ga možete koristiti za repliciranje istog okruženja u različitim sustavima. Učenje kako koristiti Docker Compose može povećati učinkovitost vaše aplikacije.

Evo primjera Docker Compose YAML datoteke:

6. Docker Hub

Docker Hub je mrežni registar spremnika za Docker. Budući da je najveći registar spremnika, to je alat za suradnju za programere i suradnike otvorenog koda. Također je izvrsno tržište za dobavljače softvera.

Docker Hub pouzdan je izvor za pronalaženje pouzdanog softvera za virtualizaciju. Možete stvoriti repozitorij i dijeliti više od 100.000 slika.

Možeš hostirajte svoje aplikacije i kod na platformi. Također možete surađivati ​​na projektima s drugim programerima. Docker Hub ima besplatnu javnu opciju ili plaćena privatna repozitorija za određene ovlaštene timove.

7. Docker umrežavanje

Docker umrežavanje je značajka koja omogućuje spremnicima međusobnu komunikaciju i komunikaciju s vanjskim resursima. Mreže omogućuju kontroliranu i izoliranu komunikaciju između spremnika. To mogu biti spremnici koji rade na jednom ili više hostova.

Kada pokrenete spremnik na svom računalu, on nije izložen vanjskim mrežama. Portove koristite za izlaganje spremnika vanjskim IP adresama, DNS uslugama, tablicama ruta i internetskim pristupnicima.

Umrežavanje omogućuje spremnicima rad u izoliranim mrežnim okruženjima. Mreže pružaju prostore imena i IP adrese, smanjujući sukob spremnika i povećavajući sigurnost.

8. Svesci Dockera

U Dockeru, volumeni su mehanizam koji se koristi za pohranjivanje trajnih podataka. Po dizajnu, kontejneri su efemerni. Što znači da ih je lako zamijeniti ili uništiti sa svim njihovim podacima. No, postoje slučajevi kada želite zadržati podatke. U takvim slučajevima možete koristiti Docker volumene za upravljanje trajnim podacima.

Volumeni imaju i druge namjene, uključujući dopuštanje dijeljenja podataka između spremnika. Lako ih je sigurnosno kopirati i migrirati u usporedbi s drugim oblicima pohrane. Osim toga, možete upravljati volumenima koristeći Docker CLI ili API.

Ako pokrenete spremnik bez volumena, Docker ga automatski stvara. Također možete stvarati i upravljati volumenima izoliranim od bilo kojeg spremnika. Koristite sljedeću naredbu za stvaranje volumena.

docker volume create my-vol

Da biste vidjeli volumen koji ste stvorili, pokrenite sljedeću naredbu:

docker volume ls //local my-vol

Zatim možete pričvrstiti volumene na bilo koji spremnik koji želite. Više o volumenima možete pročitati na Lučki radnik službena dokumentacija.

Ostale značajke Dockera

Docker je jedan od najboljih izbora za upravljanje spremnikom i kontrolu verzija. Ako naučite Dockerov skup alata, možete poboljšati i pojednostaviti svoj tijek razvoja.

Docker ima mnogo značajki koje možete koristiti za upravljanje svojim aplikacijama. Nakon svladavanja ključnih značajki, možete istražiti druge složene značajke kao što je Docker Swarm koji se koristi za orkestriranje složenih aplikacija.