{"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":"Dockeriga tutvumine","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i>Olen juba mitu kuud kasutanud Dockerit veebiprojektide arendamise ja tarnimise protsessi struktureerimiseks. Pakun \"Habr Habra\" lugejatele t\u00f5lget Dockerist kirjutatud sissejuhatavast artiklist \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.docker.com\/introduction\/understanding-docker\/\">\u201eDockerit m\u00f5istmine\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 rakenduste v\u00e4ljaandmist. Dockeriga saate oma rakenduse eraldada oma infrastruktuurist ja k\u00e4sitleda infrastruktuuri hallatava rakendusena. Docker aitab teie koodi kiiremini v\u00e4lja anda, kiiremini teste teha ja v\u00e4hendada aega koodi kirjutamise ja k\u00e4ivitamise vahel. Docker saavutab selle kerge konteinerite virtualiseerimise platvormiga, kasutades protsesse ja utiliite, mis aitavad hallata ja v\u00e4lja anda teie rakendusi.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nDocker v\u00f5imaldab oma olemuselt k\u00e4ivitada praktiliselt igasuguseid rakendusi, mis on turvaliselt isoleeritud konteineris. Turvaline isoleerimine v\u00f5imaldab teil samaaegselt k\u00e4ivitada palju konteinerit \u00fchel hostil. Konteineri kerge loomus, mis k\u00e4ivitub ilma t\u00e4iendava h\u00fcperviisori koormuseta, v\u00f5imaldab teil oma riistvarast rohkem v\u00e4lja pigistada.<\/p>\n<p>Konteinerite virtualiseerimise platvorm ja vahendid v\u00f5ivad olla kasulikud j\u00e4rgmistel juhtudel:<\/p>\n<ul>\n<li>Teie rakenduse (ja kasutatavate komponentide) pakkimine Docker konteineritesse;<\/li>\n<li>Nende konteinerite jaotamine ja tarnimine teie arendustiimidele arendamiseks ja testimiseks;<\/li>\n<li>Nende konteinerite v\u00e4ljastamine teie tootmisesse, nii andmekeskustesse kui ka pilve.<\/li>\n<\/ul>\n<p><\/p>\n<h3>Milleks ma saan Dockerit kasutada?<\/h3>\n<p><\/p>\n<h4>Rakenduste kiire v\u00e4ljastamine<\/h4>\n<p>\nDocker sobib suurep\u00e4raselt arendusprotsessi korraldamiseks. Docker v\u00f5imaldab arendajatel kasutada kohalikke konteine rakenduste ja teenustega. See v\u00f5imaldab hiljem integreeruda pideva integratsiooni ja v\u00e4ljastamise protsessiga.<\/p>\n<p>N\u00e4iteks kirjutavad teie arendajad koodi kohapeal ja jagavad oma arendussteeki (Docker piltide kogumit) kolleegidega. Kui nad on valmis, saadavad nad koodi ja konteinerid testimisplatsile ning k\u00e4ivitavad vajalikud testid. Testimisplatsilt saavad nad saata koodi ja pildid tootmisse.<\/p>\n<h4>Lihtsam v\u00e4ljastamine ja juurutamine<\/h4>\n<p>\nKonteinerite docker-p\u00f5hine platvorm v\u00f5imaldab h\u00f5lpsalt teie t\u00f6\u00f6takoormust portida. Docker konteinerid saavad t\u00f6\u00f6tada teie kohalikul masinal, nii reaalses kui ka virtuaalses serveris andmekeskuses, aga ka pilves.<\/p>\n<p>Portatiivsus ja docker'i kerge kaal v\u00f5imaldavad h\u00f5lpsalt d\u00fcnaamiliselt hallata teie koormust. Saate kasutada dockerit, et k\u00e4ivitada v\u00f5i l\u00f5petada oma rakendusi v\u00f5i teenuseid. Docker'i kiirus v\u00f5imaldab seda teha peaaegu reaalajas.<\/p>\n<h4>Suured koormused ja rohkem t\u00f6\u00f6takoormusi<\/h4>\n<p>\nDocker on kerge ja kiire. See pakub stabiilset, kulut\u00f5husat alternatiivi h\u00fcperviisoril p\u00f5hinevatele virtuaalmasinatele. See on eriti kasulik suurte koormuste korral, n\u00e4iteks oma pilve v\u00f5i teenusena platvormi (platform-as-service) loomisel. Kuid see on samuti kasulik v\u00e4ikeste ja keskmiste rakenduste puhul, kui soovite rohkem olemasolevatest ressurssidest v\u00e4lja pigistada.<\/p>\n<h3>Docker'i peamised komponendid<\/h3>\n<p>\nDocker koosneb kahest peamisest komponendist:<\/p>\n<ul>\n<li>Docker: avatud l\u00e4htekoodiga virtualiseerimisel p\u00f5hinev platvorm;<\/li>\n<li>Docker Hub: meie teenusena platvorm docker konteinerite levitamiseks ja haldamiseks.<\/li>\n<\/ul>\n<p>\n<i>M\u00e4rkus! Docker levitatakse Apache 2.0 litsentsi alusel.<\/i><\/p>\n<h3>Docker'i arhitektuur<\/h3>\n<p><\/p>\n<p>Docker kasutab kliendi-serveri arhitektuuri. Docker'i klient suhtleb Docker'i deemoniga, mis v\u00f5tab enda kanda teie konteinerite loomise, k\u00e4itamise ja jaotamise koormuse. M\u00f5lemad, klient ja server, v\u00f5ivad t\u00f6\u00f6tada samal s\u00fcsteemil, saate kliendi \u00fchendada kaugdeemoniga docker. Klient ja server suhtlevad sokli v\u00f5i RESTful API kaudu.<\/p>\n<p><img decoding=\"async\" alt=\"Dockeriga tutvumine\" src=\"\/wp-content\/uploads\/2019\/08\/eb67e625e776737163e49a41829ed102.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h4>Docker deemon<\/h4>\n<p>\nNagu joonisel n\u00e4idatud, k\u00e4ivitatakse deemon hostmasinas. Kasutaja ei suhtle serveriga otse, vaid kasutab selle jaoks klienti.<\/p>\n<h4>Docker klient<\/h4>\n<p>\nDocker klient, programm docker \u2014 on peamine liides Docker'iga. See saab k\u00e4ske kasutajalt ja suhtleb docker deemoniga.<\/p>\n<h4>Docker'i sees<\/h4>\n<p>\nEt m\u00f5ista, millest docker koosneb, peate teadma kolmest komponendist:<\/p>\n<ul>\n<li>pildid (images)<\/li>\n<li>registreerimised (registries)<\/li>\n<li>konteinerid<\/li>\n<\/ul>\n<h4>Pildid<\/h4>\n<p>\nDocker-pilt on read-only mall. N\u00e4iteks v\u00f5ib pilt sisaldada operatsioonis\u00fcsteemi Ubuntu koos Apache'i ja selle peal t\u00f6\u00f6tava rakendusega. Pilte kasutatakse konteinerite loomise jaoks. 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>Registri<\/h4>\n<p>\nDocker-registreerimiskohad hoiavad pilte. On avalikke ja eraldi registreid, kust saab pilte alla laadida v\u00f5i \u00fcles laadida. Avalik Docker-registri koht on <noindex><a rel=\"nofollow\" href=\"http:\/\/hub.docker.com\/\">Docker Hub<\/a><\/noindex>. Seal hoitakse tohutut kollektsiooni pilte. Nagu teate, v\u00f5ivad pilte luua teie v\u00f5i saate kasutada teiste loodud pilte. Registrid on jaotamise komponendid.<\/p>\n<h4>Konteinerid<\/h4>\n<p>\nKonteinerid on sarnased kataloogidele. Konteinerites on k\u00f5ik vajalik rakenduse t\u00f6\u00f6tamiseks. Iga konteiner luuakse pildist. Konteinerid v\u00f5ivad olla loodud, t\u00f6\u00f6sse pandud, peatatud, \u00fcle kantud v\u00f5i kustutatud. Iga konteiner on isoleeritud ja see on rakenduse jaoks turvaline platvorm. Konteinerid on t\u00f6\u00f6komponendid.<\/p>\n<h4>Kuidas siis Docker t\u00f6\u00f6tab?<\/h4>\n<p>\nPraegu teame, et:<\/p>\n<ul>\n<li>saame luua pilte, milles asuvad meie rakendused;<\/li>\n<li>saame luua konteinerid piltidest rakenduste k\u00e4ivitamiseks;<\/li>\n<li>saame jagada pilte Docker Hubi v\u00f5i m\u00f5ne muu pildiregistri kaudu.<\/li>\n<\/ul>\n<p>\nVaadakem, kuidas need koostisosad omavahel seonduvad.<\/p>\n<h4>Kuidas t\u00f6\u00f6tab pilt?<\/h4>\n<p>\nMe teame juba, et pilt on read-only mall, millest luuakse konteiner. Iga pilt koosneb komplektist tasanditest. Docker kasutab <noindex><a rel=\"nofollow\" href=\"http:\/\/en.wikipedia.org\/wiki\/UnionFS\">union file system<\/a><\/noindex> nende tasandite \u00fchte pildiks \u00fchendamiseks. Union file system v\u00f5imaldab failidel ja kataloogidel erinevatest failis\u00fcsteemidest (erinevatest harudest) l\u00e4heneda l\u00e4bipaistvalt, luues koherentse failis\u00fcsteemi.<\/p>\n<p>\u00dcks p\u00f5hjusi, miks docker on kergekaaluline, on nende tasandite kasutamine. Kui muudate pilti, n\u00e4iteks uuendate rakendust, luuakse uus tasand. Nii, ilma et peaksite asendama kogu pilti v\u00f5i selle uuesti koguma, nagu v\u00f5ib-olla peate tegema virtuaalmasinaga, lisatakse lihtsalt tasand v\u00f5i uuendatakse seda. Ja teil ei ole vaja levitada uut pilti, levitatakse vaid uuendust, mis muudab piltide levitamise lihtsamaks ja kiiremaks.<\/p>\n<p>Iga pilti aluseks on p\u00f5hijoonis. N\u00e4iteks, ubuntu, Ubuntu p\u00f5hijoonis, v\u00f5i fedora, Fedora p\u00f5hijoonis. Samuti v\u00f5ite kasutada pilte uute piltide loomiseks. N\u00e4iteks, kui teil on apache pilt, saate seda kasutada oma veebi rakenduste p\u00f5hijoonisena.<\/p>\n<p><i>M\u00e4rkus! Docker v\u00f5tab tavaliselt pilte Docker Hub registrist.<\/i><\/p>\n<p>Docker pildid saavad luua nende p\u00f5hijooniste p\u00f5hjal, nende piltide loomiseks vajalikud sammud nimetame juhisteks. Iga juhis loob uue pildi v\u00f5i taseme. Juhisteks on j\u00e4rgmised toimingud:<\/p>\n<p><\/p>\n<ul>\n<li>k\u00e4skluse k\u00e4ivitamine<\/li>\n<li>faili v\u00f5i katalooge lisamine<\/li>\n<li>keskkonnamuutuja loomine<\/li>\n<li>m\u00e4rkus, mida k\u00e4ivitada, kui see pilt k\u00e4ivitatakse<\/li>\n<\/ul>\n<p>Need juhised salvestatakse faili <code>Dockerfile<\/code>. Docker loeb seda <code>Dockerfile<\/code>, kui kogute pilti, t\u00e4idab need juhised ja tagastab l\u00f5pp-pildi.<\/p>\n<h4>Kuidas toimib docker register?<\/h4>\n<p>\nRegister on docker piltide laoruum. Pildi loomise j\u00e4rel saate selle avalikku Docker Hub registrisse v\u00f5i oma isiklikku registrisse avaldada.<\/p>\n<p>Docker kliendi abil saate otsida juba avaldatud pilte ja alla laadida neid oma seadmesse dockeriga konteinerite loomiseks.<\/p>\n<p>Docker Hub pakub avalikke ja privaatseid piltide laosid. Avalike ladude sisu leidmine ja allalaadimine on k\u00f5igile kergesti k\u00e4ttesaadav. Privaatses laos sisu ei tohi otsingutulemustesse sattuda. Ainult teie ja teie kasutajad v\u00f5ivad neid pilte saada ja neist konteinerite loomine.<\/p>\n<h4>Kuidas toimib konteiner?<\/h4>\n<p>\nKonteiner koosneb operatsioonis\u00fcsteemist, kasutaja failidest ja metaandmetest. Kuidas me teame, et iga konteiner luuakse pildist. See pilt \u00fctleb dockerile, mis asub konteineris, millist protsessi k\u00e4ivitada, kui konteiner k\u00e4ivitatakse ja muid konfiguratsioonilisi andmeid. Docker pilt on ainult lugemiseks. Kui docker k\u00e4ivitab konteineri, loob ta taseme lugemis\/kirjutamiseks pildi kohal (kasutades eelnevalt mainitud \u00fchisfaili s\u00fcsteemi), kus rakendust saab k\u00e4ivitada.<\/p>\n<h4>Mis juhtub, kui konteiner k\u00e4ivitatakse?<\/h4>\n<p>\nKas programmi kaudu <code>docker<\/code>, v\u00f5i RESTful API kaudu, docker klient \u00fctleb docker deemonile konteineri k\u00e4ivitada.<\/p>\n<p><code>$ sudo docker run -i -t ubuntu \/bin\/bash<br \/>\n<\/code><br \/>\nVaatame seda k\u00e4sku. Klient k\u00e4ivitatakse k\u00e4su abil <code>docker<\/code>, koos valikuga <code>run<\/code>, mis \u00fctleb, et k\u00e4ivitatakse uus konteiner. Kaugkonteineri k\u00e4ivitamiseks on minimaalseteks n\u00f5udeks j\u00e4rgmised atribuudid:<\/p>\n<ul>\n<li>millist pilti kasutada konteineri loomisel. Meie puhul <code>ubuntu<\/code><\/li>\n<li>k\u00e4sk, mida soovite k\u00e4ivitada, kui konteiner k\u00e4ivitatakse. Meie puhul <code>\/bin\/bash<\/code><\/li>\n<\/ul>\n<p>Mis siis toimub kapoti all, kui me selle k\u00e4su k\u00e4ivitame?<\/p>\n<p>Docker teeb j\u00e4rjestikku j\u00e4rgmist:<\/p>\n<ul>\n<li><b>laeb alla pilti ubuntu:<\/b> docker kontrollib, kas pilt on olemas <code>ubuntu<\/code> kohalikul masinal, ja kui ei, siis laadib selle alla <noindex><a rel=\"nofollow\" href=\"https:\/\/hub.docker.com\/\">Docker Hub<\/a><\/noindex>. Kui pilt on olemas, siis kasutab seda konteineri loomiseks;<\/li>\n<li><b>loob konteineri:<\/b> kui pilt on saadud, kasutab docker seda konteineri loomiseks;<\/li>\n<li><b>initsialiseerib failis\u00fcsteemi ja monteerib ainult lugemiseks tasandi:<\/b> konteiner on loodud failis\u00fcsteemis ja ainult lugemiseks tasand on lisatud pildile;<\/li>\n<li><b>initsialiseerib v\u00f5rgu\/silda:<\/b> loomine v\u00f5i ladustamine, mis v\u00f5imaldab dockeril suhelda hostmasinaga;<\/li>\n<li><b>IP-aadressi m\u00e4\u00e4ramine:<\/b> otsib ja m\u00e4\u00e4rab aadressi;<\/li>\n<li><b>K\u00e4ivitab m\u00e4\u00e4ratud protsessi:<\/b> k\u00e4ivitab teie rakenduse;<\/li>\n<li><b>K\u00e4idab ja v\u00e4ljastab teie rakenduse v\u00e4ljundi:<\/b> \u00fchendab ja logib teie rakenduse standardse sisend, v\u00e4ljundi ja vigade voogud, et saaksite j\u00e4lgida, kuidas teie rakendus t\u00f6\u00f6tab.<\/li>\n<\/ul>\n<p>\nN\u00fc\u00fcd on teil toimiv konteiner. Saate hallata oma konteinerit ja suhelda oma rakendusega. Kui otsustate rakenduse peatada, kustutage konteiner.<\/p>\n<h3>Kasutatud tehnoloogiad<\/h3>\n<p>\nDocker on kirjutatud Go-s ja kasutab Linuxi kernel teatud funktsionaalsuse rakendamiseks.<\/p>\n<h4>Nimekonnad (namespaces)<\/h4>\n<p>\nDocker kasutab tehnoloogiat <code>namespaces<\/code> isoleeritud t\u00f6\u00f6ruumide korraldamiseks, mida nimetame konteineriteks. Kui k\u00e4ivitame konteineri, loob docker selle konteineri jaoks komplekti nimesid.<\/p>\n<p>See loob isoleeritud tasandi, kus iga konteineri aspekt on k\u00e4ivitatud oma nimes, ja ei p\u00e4\u00e4se v\u00e4liss\u00fcsteemi juurde.<\/p>\n<p>M\u00f5ned docker'i kasutatavad nimesid:<\/p>\n<ul>\n<li><b>pid:<\/b> protsessi isoleerimiseks;<\/li>\n<li><b>net:<\/b> v\u00f5rgu liideste haldamiseks;<\/li>\n<li><b>ipc:<\/b> IPC ressursside haldamiseks. (ICP: InterProccess Communication);<\/li>\n<li><b>mnt:<\/b> mount-punktide haldamiseks;<\/li>\n<li><b>utc:<\/b> tuuma isoleerimiseks ja versiooni 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 t\u00f5hususe v\u00f5ti on isoleerimine, pakkudes rakendusele ainult neid ressursse, mida soovite anda. See tagab, et konteinerid on head naabrid. Kontrollgrupid v\u00f5imaldavad jaotada saadavalolevaid riistvara ressursse ja vajadusel seada piiranguid ja piire. N\u00e4iteks piirata konteineri v\u00f5imalikku m\u00e4lu hulka.<\/p>\n<h4>Union File System<\/h4>\n<p>\nUnion File Sysem ehk UnionFS on failis\u00fcsteem, mis t\u00f6\u00f6tab tasemeid luues, muutes selle v\u00e4ga kergeks ja kiireks. Docker kasutab UnionFS-i konteinerite loomiseks vajalike plokkide koostamiseks. Docker v\u00f5ib kasutada mitmeid UnionFS-i variante, sealhulgas: AUFS, btrfs, vfs ja DeviceMapper.<\/p>\n<h4>Konteineriformaadid<\/h4>\n<p>\nDocker koosneb neist komponentidest \u00fcmbrikus, mida me nimetame konteineriformaadiks. Vaikimisi kasutatakse formaati, mida nimetatakse <code>libcontainer<\/code>. Samuti toetab Docker Linuxis traditsioonilist konteineri formaati <noindex><a rel=\"nofollow\" href=\"http:\/\/linuxcontainers.org\">LXC<\/a><\/noindex>. Tulevikus v\u00f5ib Docker toetada ka teisi konteineriformaate, n\u00e4iteks integreerides BSD Jailse v\u00f5i Solaris Zone'e.<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 5.0.1.1 - 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.\" \/>\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) 5.0.1.1\" \/>\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.\" \/>\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":"Juba mitu kuud olen kasutanud Dockerit veebiprojektide arendus-\/tarnimisprotsessi struktureerimiseks.","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.","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","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"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}]}}