Docker je projekat otvorenog koda koji automatizuje implementaciju aplikacija unutar softverskih kontejnera , pružajući dodatni sloj apstrakcije i automatizacije za virtualizaciju aplikacija na više operativnih sistema.
Docker koristi funkcije izolacije resursa Linux kernela, kao što su cgrupe i imenski prostori, kako bi omogućio nezavisne "kontejnere".
Na ovaj način, Docker obezbjeđuje ove kontejnere za pokretanje unutar jedne Linux instance, izbjegavajući troškove pokretanja i održavanja virtuelnih mašina.
Podrška Linux kernela za prostore imena izoluje pogled aplikacije na njeno operativno okruženje.
Uključujući stabla procesa, mrežu, korisnički ID i montirane sisteme datoteka, dok kernel cgroups obezbjeđuju izolaciju resursa, uključujući CPU, memoriju, blok I/O i mrežu.
Nova verzija Dockera 18.09
Predstavljena je verzija Docker 18.09 izolovanog Linux kompleta alata za upravljanje kontejnerima, koja pruža API visokog nivoa za manipulisanje kontejnerima na nivou izolacije pojedinačnih aplikacija.
Docker vam omogućava da pokrenete proizvoljne procese u izolacijskom modu, a zatim prenesete i klonirate kontejnere kreirane za te procese na druge servere, preuzimajući sav posao stvaranja, održavanja i održavanja kontejnera.
Počevši od Docker 18.09, vrijeme podrške za izdanje je poboljšano jer su ga programeri povećali sa 4 na 7 mjeseci zbog modernizacije razvojnog ciklusa Docker Community Edition-a.
Još jedna značajna stvar ovog novog Docker izdanja je ažuriranje jezgra runtime okruženja za upravljanje kontejnerima na containerd 1.2.
Ovo je stabilizovalo upotrebu mehanizma upravljanja kontejnerom gRPC i osiguralo kompatibilnost sa platformom Kubernetes 1.12 i poboljšanu podršku za univerzalne slike za različite arhitekture (multi-arch).
S druge strane, Docker 18.09 proširuje mogućnosti novog backenda za izgradnju (pružajući funkcionalnost naredbe "docker build"). Ovo omogućava automatske operacije sakupljanja smeća koje podržavaju ugniježđena izdanja poslova i ne zahtijevaju autorizaciju root korisnika tokom operacije.
Poboljšanja BuildKita

Docker 18.09 također uključuje opciju odgode BuildKit-a. Ovo je nova arhitektura izgradnje koja poboljšava performanse, upravljanje pohranom i proširivost, a istovremeno dodaje neke važne nove funkcije.
Poboljšanja performansi: BuildKit uključuje redizajniran model konkurentnosti i keširanja koji ga čini mnogo bržim, preciznijim i prenosivim.
Ovom promjenom i usklađivanjem arhitekture, Docker programeri sada omogućavaju i nadogradnju engine-a sa Community verzije na Enterprise engine jednostavnom aktivacijom licence.
Za trenutne korisnike Docker zajednice, ovaj potez znači otključavanje mnogih sigurnosnih funkcija preduzeća i dobijanje pristupa Docker-ovoj podršci i proširenim politikama održavanja.
U poređenju sa prethodnom verzijom
Kod je modificiran kako bi se organiziralo paralelno izvršavanje posla, a promijenjen je i model keširanja, što je omogućilo značajno ubrzanje asembliranja.
Na primjer, prilikom testiranja projekta Dockerfile Moby postavljena brzina povećala se s 2 na 9,5 puta zbog istovremenog izvođenja višestrukih faza montiranja, zanemarujući neiskorištene korake i inkrementalne datoteke podataka između prikazanih skupova kontekst.
Dodata je mogućnost ugrađivanja tajnih podataka u Dockerfile i njihovog sigurnog prijenosa tokom procesa izgradnje , bez njihovog pohranjivanja u rezultirajuće slike i bez instaliranja u keš memoriju izgradnje.
Mogućnost prosljeđivanja ssh ssh-agent soketa je implementirana, na primjer, za povezivanje s privatnim repozitorijima korištenjem postojeće veze putem ssh-agenta.
Asemblerski keš sada se može upravljati odvojeno od slika.
Dodana je nova naredba “docker builder prune” za brisanje keša i mogućnost definiranja pravila čišćenja i još mnogo toga.
Ako želite saznati više o tome, možete posjetiti sljedeći link.