{"id":36772,"date":"2019-10-31T22:13:44","date_gmt":"2019-10-31T19:13:44","guid":{"rendered":"https:\/\/prohoster.info\/blog\/ponimaya-docker\/"},"modified":"2019-10-31T22:13:44","modified_gmt":"2019-10-31T19:13:44","slug":"ponimaya-docker","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ponimaya-docker","title":{"rendered":"M\u00f5istes Dockerit","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i>Olen kasutanud Dockerit veebiprojektide arendus- ja tarnimisprotsessi struktureerimiseks juba mitu kuud. Jagan 'Habr Habra' lugejatega t\u00f5lget Dockeriga tutvumisartiklist \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.docker.com\/introduction\/understanding-docker\/\">\u201eUnderstanding Docker\u201c<\/a><\/noindex>.<\/i><\/p>\n<h3>Mis on Docker?<\/h3>\n<p>\nDocker on avatud platvorm rakenduste arendamiseks, tarnimiseks ja haldamiseks. Docker on loodud selleks, et kiirendada teie rakenduste k\u00e4ivitamist. Dockeriga saate isoleerida oma rakenduse oma infrastruktuurist ja hallata infrastruktuuri kui hallatavat rakendust. Docker aitab teie koodi kiiremini tarnida, kiiremini testida, rakendusi kiiremini v\u00e4lja anda ja v\u00e4hendada aega koodikirjutamise ja koodi k\u00e4ivitamise vahel. Docker teeb seda kerge konteinerite virtualiseerimise platvormiga, kasutades protsesse ja utiliite, mis aitavad hallata ja tarnida teie rakendusi.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nDocker v\u00f5imaldab oma tuumas praktiliselt igasuguste rakenduste k\u00e4ivitamist, turvaliselt eraldatuna konteineris. Turvaline eraldatus v\u00f5imaldab teil samal hostil samal ajal k\u00e4itada mitmeid konteinerid. Kerguse t\u00f5ttu, millega konteinerid k\u00e4ivitatakse ilma h\u00fcpervisorilt t\u00e4iendava koormuseta, saate oma riistvarast rohkem kasu.<\/p>\n<p>Konteinerite virtualiseerimise platvorm ja t\u00f6\u00f6riistad v\u00f5ivad olla kasulikud j\u00e4rgmistel juhtudel:<\/p>\n<ul>\n<li>teie rakenduste (ja kasutatavate komponentide) pakkimine docker konteineritesse;<\/li>\n<li>nende konteinerite jagamine ja tarnimine teie arendus- ja testimismeeskondadele;<\/li>\n<li>nende konteinerite paigutamine tootmis\u00fcsteemidesse, nii andmekeskustesse kui ka pilveteenustes.<\/li>\n<\/ul>\n<p><\/p>\n<h3>Milleks ma saan dockerit kasutada?<\/h3>\n<p><\/p>\n<h4>Teie rakenduste kiire paigutamine<\/h4>\n<p>\nDocker sobib suurep\u00e4raselt arendusts\u00fckli korraldamiseks. Docker v\u00f5imaldab arendajatel kasutada kohalikke konteinerid rakenduste ja teenuste jaoks, mis v\u00f5imaldab hiljem integreeruda pideva integreerimise ja juurutamise (continuous integration and deployment workflow) protsessiga.<\/p>\n<p>N\u00e4iteks kirjutavad teie arendajad koodi kohapeal ja jagavad oma arenduspaketti (docker piltide komplekti) kolleegidega. Kui nad on valmis, saadavad nad koodi ja konteinerid testimisalale ja k\u00e4ivitavad k\u00f5ik vajalikud testid. Testimisalalt saavad nad saata koodi ja pildid tootmisse.<\/p>\n<h4>Lihtsam juurutamine ja kasutuselev\u00f5tt<\/h4>\n<p>\nKonteinerip\u00f5hine docker platvorm v\u00f5imaldab h\u00f5lpsasti teie koormust portida. Docker konteinerid saavad t\u00f6\u00f6tada teie kohapealses arvutis, olgu see siis reaalses v\u00f5i virtuaalses masinas andmekeskuses, v\u00f5i ka pilves.<\/p>\n<p>Docker'i portatiivsus ja kerge kaal v\u00f5imaldavad h\u00f5lpsasti teie koormust d\u00fcnaamiliselt hallata. V\u00f5ite kasutada docker'it oma rakenduse v\u00f5i teenuste juurutamiseks v\u00f5i sulgemiseks. Docker'i kiirus v\u00f5imaldab seda teha peaaegu reaalajas.<\/p>\n<h4>Suured koormused ja rohkem koormusi<\/h4>\n<p>\nDocker on kerge ja kiire. See pakub usaldusv\u00e4\u00e4rset ning kulut\u00f5husat alternatiivi h\u00fcpervisorite p\u00f5histele virtuaalmasinatele. See on eriti kasulik suure t\u00f6\u00f6koormuse korral, n\u00e4iteks oma pilve v\u00f5i teenusena platvormi (platform-as-a-service) loomisel. Kuid see on samuti kasulik v\u00e4ikeste ja keskmise suurusega rakenduste jaoks, kui soovite oma olemasolevatest ressurssidest rohkem v\u00e4lja pigistada.<\/p>\n<h3>Docker peamised komponendid<\/h3>\n<p>\nDocker koosneb kahest peamisest komponendist:<\/p>\n<ul>\n<li>Docker: avatud l\u00e4htekoodiga virtualiseerimisplatvorm;<\/li>\n<li>Docker Hub: meie teenusena platvorm docker konteinerite jagamiseks ja haldamiseks.<\/li>\n<\/ul>\n<p>\n<i>M\u00e4rkus! Docker levitatakse Apache 2.0 litsentsi alusel.<\/i><\/p>\n<h3>Docker arhitektuur<\/h3>\n<p><\/p>\n<p>Docker kasutab kliendi-serveri arhitektuuri. Docker'i klient suhtleb Docker'i deemoniga, mis tegeleb teie konteinerite loomise, k\u00e4itamise ja jagamise koormaga. Nii klient kui ka server v\u00f5ivad t\u00f6\u00f6tada samal s\u00fcsteemil; saate liita kliendi kaugdeemoniga. Klient ja server suhtlevad l\u00e4bi sokkide v\u00f5i RESTful API kaudu.<\/p>\n<p><img decoding=\"async\" alt=\"M\u00f5istes Dockerit\" src=\"\/wp-content\/uploads\/2019\/08\/eb67e625e776737163e49a41829ed102.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h4>Docker deemon<\/h4>\n<p>\nDiagrammil on n\u00e4idatud, et deemon k\u00e4ivitatakse hostmasinas. Kasutaja ei suhtle serveriga otse, vaid kasutab selleks klienti.<\/p>\n<h4>Docker-klient<\/h4>\n<p>\nDocker-klient, programm docker on peamine liides Dockeriga. See saab k\u00e4ske kasutajalt ja suhtleb docker-deemoniga.<\/p>\n<h4>Dockeris sees<\/h4>\n<p>\nSelleks, et m\u00f5ista, millest docker koosneb, peate teadma kolme komponenti:<\/p>\n<ul>\n<li>pildid (images)<\/li>\n<li>registrid (registries)<\/li>\n<li>konteinerites<\/li>\n<\/ul>\n<h4>Pildid<\/h4>\n<p>\nDocker-pilt on lugemiseks m\u00f5eldud mall. N\u00e4iteks v\u00f5ib pilt sisaldada Ubuntu operatsioonis\u00fcsteemi koos Apache ja rakendusega. Pilte kasutatakse konteinerite loomiseks. Docker v\u00f5imaldab h\u00f5lpsasti luua uusi pilte, uuendada olemasolevaid v\u00f5i saate alla laadida teiste loodud pilte. Pildid on Docker-i koostisosad.<\/p>\n<h4>Register<\/h4>\n<p>\nDocker-register salvestab pilte. On avalikke ja privaatseid registreid, kust saab pilte alla laadida v\u00f5i laadida \u00fcles. Avalik Docker-register on <noindex><a rel=\"nofollow\" href=\"http:\/\/hub.docker.com\/\">Docker Hub<\/a><\/noindex>. Seal hoitakse tohutut kogumit pilte. Nagu teate, v\u00f5ivad pildid olla teie loodud v\u00f5i saate kasutada teiste loodud pilte. Registrid on levitamise komponendid.<\/p>\n<h4>Konteinerid<\/h4>\n<p>\nKonteinerid sarnanevad direktoritele. Konteinerites sisaldub k\u00f5ik, mis on vajalik rakenduse t\u00f6\u00f6tamiseks. Iga konteiner luuakse pildist. Konteinerid v\u00f5ivad olla loodud, k\u00e4ivitatud, peatatud, liigutatud v\u00f5i kustutatud. Iga konteiner on isoleeritud ja turvaline platvorm rakenduse jaoks. Konteinerid on t\u00f6\u00f6komponendid.<\/p>\n<h4>Kuidas Docker t\u00f6\u00f6tab?<\/h4>\n<p>\nPraegu teame, et:<\/p>\n<ul>\n<li>v\u00f5ime luua pilte, mis sisaldavad meie rakendusi;<\/li>\n<li>v\u00f5ime luua konteinereid piltidest rakenduste k\u00e4ivitamiseks;<\/li>\n<li>v\u00f5ime pilte levitada l\u00e4bi Docker Hubi v\u00f5i m\u00f5ne muu piltide registri.<\/li>\n<\/ul>\n<p>\nVaadakem, kuidas need komponendid omavahel m\u00e4ngivad.<\/p>\n<h4>Kuidas toimib pilt?<\/h4>\n<p>\nTeame juba, et pilt on read-only mall, millest luuakse konteiner. Iga pilt koosneb tasemetest. Docker kasutab <noindex><a rel=\"nofollow\" href=\"http:\/\/en.wikipedia.org\/wiki\/UnionFS\">union file system<\/a><\/noindex> nende tasemete kokku kombineerimiseks \u00fcheks pildiks. Union file system v\u00f5imaldab failidele ja direktoritele erinevatest failis\u00fcsteemidest (erinevatest harudest) l\u00e4bipaistvalt kattuda, luues koherentse failis\u00fcsteemi.<\/p>\n<p>\u00dcks p\u00f5hjus, miks docker on kergesti kasutatav, on tasandite kasutamine. Kui muudad kuvi, n\u00e4iteks uuendades rakendust, luuakse uus tasand. Nii et erinevalt virtuaalsest masinast, kus v\u00f5ib-olla pead kogu kuvi asendama v\u00f5i uuesti koostama, lisatakse v\u00f5i uuendatakse ainult tasand. Ja sul ei ole vaja jagada kogu uut kuvi, vaid ainult uuendust, mis teeb kujundite levitamise lihtsamaks ja kiiremaks.<\/p>\n<p>Iga kuvi aluseks on baas kuvi. N\u00e4iteks ubuntu, Ubuntu baas kuvi, v\u00f5i fedora, Fedora jaotuse baas kuvi. Samuti saad kasutada kuve uute kujundite loomiseks. Kui sul on apache kuvi, saad kasutada seda oma veebirakenduste baas kujuna.<\/p>\n<p><i>M\u00e4rkus! Docker v\u00f5tab kuve tavaliselt Docker Hub registrist.<\/i><\/p>\n<p>Docker kuve v\u00f5ivad luua nende baas kuvidest, nende kuvide loomiseks m\u00f5eldud samme nimetatakse juhisteks. Iga juhis loob uue kuvi v\u00f5i tasandi. Juhised v\u00f5ib jagada j\u00e4rgmisteks tegevusteks:<\/p>\n<p><\/p>\n<ul>\n<li>k\u00e4skude k\u00e4ivitamine<\/li>\n<li>faili v\u00f5i kausta lisamine<\/li>\n<li>keskkonnamuutuja loomine<\/li>\n<li>juhised, mida k\u00e4ivitada, kui selle pildi konteiner k\u00e4ivitatakse<\/li>\n<\/ul>\n<p>Need juhised on salvestatud failis <code>Dockerfile<\/code>. Docker loeb selle <code>Dockerfile<\/code>, kui koostate pilti, t\u00e4idab need juhised ja tagastab l\u00f5plikku pilti.<\/p>\n<h4>Kuidas t\u00f6\u00f6tab dockeri register?<\/h4>\n<p>\nRegister on dockeri piltide ladustamine. Pildi loomise j\u00e4rel saate selle avalikule docker hubile v\u00f5i isiklikku registrisse avaldada.<\/p>\n<p>Docker kliendi abil saate otsida juba avaldatud pilte ja alla laadida need oma masinale dockerisse konteinerite loomiseks.<\/p>\n<p>Docker Hub pakub avalikke ja privaate pildiladusid. Avalike ladude sisu on k\u00f5igile kogu aeg saadaval. Privaatses laos olev sisu ei kajastu otsingutulemustes. Ainult teie ja teie kasutajad saavad neid pilte ja luua neist konteinerid.<\/p>\n<h4>Kuidas t\u00f6\u00f6tab konteiner?<\/h4>\n<p>\nKonteiner koosneb operatsioonis\u00fcsteemist, kasutaja failidest ja metaandmetest. Nagu me teame, luuakse iga konteiner pildist. See pilt \u00fctleb docker\u2019ile, mis konteineris on, millist protsessi k\u00e4ivitada, kui konteiner k\u00e4ivitatakse, ja muid konfiguratsiooniteavet. Docker pilt on ainult lugemiseks. Kui docker k\u00e4ivitab konteineri, loob ta pildi peal lugemis-\/kirjutamise taseme (kasutades eelnevalt mainitud \u00fchinematefaili s\u00fcsteemi), kus rakendust saab k\u00e4itada.<\/p>\n<h4>Mis juhtub, kui konteiner k\u00e4ivitatakse?<\/h4>\n<p>\nV\u00f5i programmi kaudu <code>docker<\/code>, v\u00f5i RESTful API kaudu, docker klient k\u00fcsib docker deemonilt konteineri k\u00e4ivitamist.<\/p>\n<p><code>$ sudo docker run -i -t ubuntu \/bin\/bash<br \/>\n<\/code><br \/>\nVaatame seda k\u00e4sku. Klient k\u00e4ivitatakse k\u00e4suga <code>docker<\/code>, koos valikuga <code>run<\/code>, mis \u00fctleb, et k\u00e4ivitatakse uus konteiner. Konteineri k\u00e4ivitamiseks on minimaalseteks n\u00f5ueteks j\u00e4rgmised atribuudid:<\/p>\n<ul>\n<li>millist pilti kasutada konteineri loomiseks. Meie puhul <code>ubuntu<\/code><\/li>\n<li>k\u00e4sku, mida soovite k\u00e4ivitada, kui konteiner on k\u00e4ivitatud. Meie puhul <code>\/bin\/bash<\/code><\/li>\n<\/ul>\n<p>Mis siis ikkagi juhtub, kui me selle k\u00e4su k\u00e4ivitame?<\/p>\n<p>Docker j\u00e4rgib j\u00e4rgmisi samme:<\/p>\n<ul>\n<li><b>laeb alla pildi ubuntu:<\/b> docker kontrollib, kas pilt on <code>ubuntu<\/code> kohalikul masinal olemas; kui ei, siis laadib selle alla <noindex><a rel=\"nofollow\" href=\"https:\/\/hub.docker.com\/\">Docker Hub<\/a><\/noindex>. Kui pilt on olemas, kasutatakse seda konteineri loomisel;<\/li>\n<li><b>loomine konteiner:<\/b> kui pilt on saanud, kasutab docker seda konteineri loomiseks;<\/li>\n<li><b>algatab failis\u00fcsteemi ja liidab ainult lugemise taseme:<\/b> konteiner on loodud failis\u00fcsteemis ja ainult lugemise tase lisatud pildile;<\/li>\n<li><b>algatab v\u00f5rgu\/silda:<\/b> loob v\u00f5rguliidese, mis v\u00f5imaldab dockeril suhelda hostmasinaga;<\/li>\n<li><b>IP-aadressi seadmine:<\/b> leidmine ja seadmine aadress;<\/li>\n<li><b>K\u00e4ivitab m\u00e4\u00e4ratud protsessi:<\/b> k\u00e4ivitab teie rakenduse;<\/li>\n<li><b>K\u00e4itleb ja edastab teie rakenduse v\u00e4ljundi:<\/b> \u00fchendab ja logib teie rakenduse standardse sisendi, v\u00e4ljundi ja veateate, et saaksite j\u00e4lgida, kuidas teie rakendus t\u00f6\u00f6tab.<\/li>\n<\/ul>\n<p>\nN\u00fc\u00fcd on teil t\u00f6\u00f6tav konteiner. Saate hallata oma konteinerit ja suhelda oma rakendusega. Kui olete valmis rakenduse peatama, kustutage konteiner.<\/p>\n<h3>Kasutatud tehnoloogiad<\/h3>\n<p>\nDocker on kirjutatud Go-s ja kasutab m\u00f5ningaid Linuxi kernel'i v\u00f5imalusi \u00fclaltoodud funktsionaalsuse elluviimiseks.<\/p>\n<h4>Nimed (namespaces)<\/h4>\n<p>\nDocker kasutab tehnoloogiat <code>namespaces<\/code> isoleeritud t\u00f6\u00f6ruumide korraldamiseks, mida me nimetame konteineriteks. Kui k\u00e4ivitame konteineri, loob Docker selle konteineri jaoks komplekti nimesid.<\/p>\n<p>See loob isoleeritud tasandi, kus iga konteineri aspekt t\u00f6\u00f6tab oma nimes, ega p\u00e4\u00e4se v\u00e4liss\u00fcsteemide juurde.<\/p>\n<p>M\u00f5ningate Docker'i kasutatavate nimede loetelu:<\/p>\n<ul>\n<li><b>pid:<\/b> protsesside isoleerimiseks;<\/li>\n<li><b>net:<\/b> v\u00f5rguliideste haldamiseks;<\/li>\n<li><b>ipc:<\/b> IPC ressursside haldamiseks. (ICP: InterProccess Communication);<\/li>\n<li><b>mnt:<\/b> moodulite punktide haldamiseks;<\/li>\n<li><b>utc:<\/b> kernel'i isoleerimiseks ja versioonide genereerimise kontrollimiseks (UTC: Unix timesharing system).<\/li>\n<\/ul>\n<h4>Kontrollgrupid (Control groups)<\/h4>\n<p>\nDocker kasutab samuti tehnoloogiat <code>cgroups<\/code> v\u00f5i kontrollgrupid. Rakenduse isoleeritud t\u00f6\u00f6 p\u00f5hjus on pakkuda rakendusele ainult neid ressursse, mida soovite sellele anda. See tagab, et konteinerid oleksid head naabrid. Kontrollgrupid v\u00f5imaldavad jagada saadaolevaid riistvararesursse ja vajadusel seada piire ja piiranguid. N\u00e4iteks saate piirata konteineri v\u00f5imalikku m\u00e4lu kogust.<\/p>\n<h4>Union File System<\/h4>\n<p>\nUnion File Sysem v\u00f5i UnionFS on failis\u00fcsteem, mis t\u00f6\u00f6tab tasandite loomise kaudu, muutes selle v\u00e4ga kergekaaluliseks ja kiireks. Docker kasutab UnionFS-i konteinerite ehitamiseks, luues blokke. Docker v\u00f5ib kasutada mitmeid UnionFS-i variante, sealhulgas: AUFS, btrfs, vfs ja DeviceMapper.<\/p>\n<h4>Konteineriformaadid<\/h4>\n<p>\nDocker \u00fchendab need komponendid \u00fcmbrikku, mida me nimetame konteineriformaadiks. Vaikimisi kasutatav formaat on <code>libcontainer<\/code>. Samuti toetab Docker traditsioonilist konteineriformaati Linuxis koos <noindex><a rel=\"nofollow\" href=\"http:\/\/linuxcontainers.org\">LXC<\/a><\/noindex>. Tulevikus v\u00f5ib Docker toetada ka teisi konteineriformaate. N\u00e4iteks integreerudes BSD Jailide v\u00f5i Solaris Zones'iga.<br \/>\n<br \/>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/253877\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0423\u0436\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e docker \u0434\u043b\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438\/\u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u0432\u0435\u0431-\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432. \u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f\u043c \u00ab\u0425\u0430\u0431\u0440\u0430\u0445\u0430\u0431\u0440\u0430\u00bb \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0432\u0432\u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u043e docker \u2014 \u00abUnderstanding docker\u00bb. \u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u0434\u043e\u043a\u0435\u0440? \u0414\u043e\u043a\u0435\u0440 \u2014 \u044d\u0442\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u0430\u044f \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u0438 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. Docker \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d \u0434\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0431\u044b\u0441\u0442\u0440\u043e\u0433\u043e \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043d\u0438\u044f \u0432\u0430\u0448\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e docker \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0442\u0434\u0435\u043b\u0438\u0442\u044c \u0432\u0430\u0448\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043e\u0442 \u0432\u0430\u0448\u0435\u0439 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-36772","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0423\u0436\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e docker \u0434\u043b\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438\/\u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u0432\u0435\u0431-\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432. \u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f\u043c \u00ab\u0425\u0430\u0431\u0440\u0430\u0445\u0430\u0431\u0440\u0430\u00bb \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0432\u0432\u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u043e docker \u2014 \u00abUnderstanding docker\u00bb. \u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u0434\u043e\u043a\u0435\u0440? \u0414\u043e\u043a\u0435\u0440 \u2014 \u044d\u0442\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u0430\u044f \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u0438 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. Docker \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d \u0434\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0431\u044b\u0441\u0442\u0440\u043e\u0433\u043e \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043d\u0438\u044f \u0432\u0430\u0448\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e docker \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0442\u0434\u0435\u043b\u0438\u0442\u044c \u0432\u0430\u0448\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043e\u0442 \u0432\u0430\u0448\u0435\u0439 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0438\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ponimaya-docker\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041f\u043e\u043d\u0438\u043c\u0430\u044f Docker | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0423\u0436\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e docker \u0434\u043b\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438\/\u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u0432\u0435\u0431-\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432. \u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f\u043c \u00ab\u0425\u0430\u0431\u0440\u0430\u0445\u0430\u0431\u0440\u0430\u00bb \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0432\u0432\u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u043e docker \u2014 \u00abUnderstanding docker\u00bb. \u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u0434\u043e\u043a\u0435\u0440? \u0414\u043e\u043a\u0435\u0440 \u2014 \u044d\u0442\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u0430\u044f \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u0438 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. Docker \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d \u0434\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0431\u044b\u0441\u0442\u0440\u043e\u0433\u043e \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043d\u0438\u044f \u0432\u0430\u0448\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e docker \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0442\u0434\u0435\u043b\u0438\u0442\u044c \u0432\u0430\u0448\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043e\u0442 \u0432\u0430\u0448\u0435\u0439 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0438\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ponimaya-docker\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:13:44+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:13:44+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47M\u00f5istes Dockerit | ProHoster","description":"Olen juba mitu kuud kasutanud Dockerit veebiprojektide arendus-\/toimetamisprotsessi struktureerimiseks. Pakun Habrahabras lugejatele t\u00f5lget Dockerit k\u00e4sitlevast sissejuhatavast artiklist \u2014 \u201eUnderstanding Docker\u201d. Mis on Docker? Docker on avatud platvorm rakenduste arendamiseks, tarnimiseks ja haldamiseks. Docker on loodud teie rakenduste kiireks k\u00e4ivitamiseks. Dockeri abil saate eraldada oma rakenduse oma infrastruktuurist ja","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ponimaya-docker","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041f\u043e\u043d\u0438\u043c\u0430\u044f Docker | ProHoster","og:description":"\u0423\u0436\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e docker \u0434\u043b\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438\/\u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u0432\u0435\u0431-\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432. \u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f\u043c \u00ab\u0425\u0430\u0431\u0440\u0430\u0445\u0430\u0431\u0440\u0430\u00bb \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0432\u0432\u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u043e docker \u2014 \u00abUnderstanding docker\u00bb. \u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u0434\u043e\u043a\u0435\u0440? \u0414\u043e\u043a\u0435\u0440 \u2014 \u044d\u0442\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u0430\u044f \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u0438 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. Docker \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d \u0434\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0431\u044b\u0441\u0442\u0440\u043e\u0433\u043e \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043d\u0438\u044f \u0432\u0430\u0448\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e docker \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0442\u0434\u0435\u043b\u0438\u0442\u044c \u0432\u0430\u0448\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043e\u0442 \u0432\u0430\u0448\u0435\u0439 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0438","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ponimaya-docker","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:13:44+00:00","article:modified_time":"2019-10-31T19:13:44+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"36772","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 04:47:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:39:22","updated":"2026-01-22 04:47:19"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/36772","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=36772"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/36772\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=36772"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=36772"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=36772"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}