{"id":42175,"date":"2019-03-18T00:00:00","date_gmt":"2019-03-17T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/evolyutsiya-sredstv-postavki-ili-razmyshleniya-o-docker-deb-jar-i-prochem"},"modified":"2020-02-18T13:45:00","modified_gmt":"2020-02-18T10:45:00","slug":"evolyutsiya-sredstv-postavki-ili-razmyshleniya-o-docker-deb-jar-i-prochem","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/evolyutsiya-sredstv-postavki-ili-razmyshleniya-o-docker-deb-jar-i-prochem","title":{"rendered":"Evoluce prost\u0159edk\u016f dod\u00e1n\u00ed, nebo \u00favahy o Dockeru, deb, jar a dal\u0161\u00edch","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Evoluce prost\u0159edk\u016f dod\u00e1n\u00ed, nebo \u00favahy o Dockeru, deb, jar a dal\u0161\u00edch\" src=\"\/wp-content\/uploads\/2019\/03\/3c677d0628824497039901c0179a8749.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nRaz jednu som sa rozhodol nap\u00edsa\u0165 \u010dl\u00e1nok o dod\u00e1vke vo forme kontajnerov Docker a deb bal\u00edkov, ale ke\u010f som za\u010dal, nejako ma to zanieslo do d\u00e1vnych \u010dias prv\u00fdch osobn\u00fdch po\u010d\u00edta\u010dov a dokonca kalkula\u010diek. Celkovo, namiesto such\u00fdch porovnan\u00ed Dockera a debu sa vyformovali ak\u00e9si \u00favahy na t\u00e9mu evol\u00facie, ktor\u00e9 teraz predklad\u00e1m na v\u00e1\u0161 s\u00fad.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nAk\u00fdko\u013evek produkt, nech je ak\u00fdko\u013evek, mus\u00ed sa nejak\u00fdm sp\u00f4sobom dosta\u0165 na produktov\u00e9 servery, mus\u00ed by\u0165 nastaven\u00fd a spusten\u00fd. O tom bude tento \u010dl\u00e1nok.<\/p>\n<p>Budem uva\u017eova\u0165 v historickom kontexte, \"\u010do vid\u00edm \u2014 o tom spievam\", \u010do som videl, ke\u010f som za\u010d\u00ednal p\u00edsa\u0165 k\u00f3d a \u010do pozorujem teraz, \u010do sami v s\u00fa\u010dasnosti pou\u017e\u00edvame a pre\u010do. \u010cl\u00e1nok si nen\u00e1rokuje na \u00faplne zameran\u00e9 v\u00fdskum, niektor\u00e9 momenty s\u00fa opomenut\u00e9, je to m\u00f4j osobn\u00fd poh\u013ead na to, \u010do bolo a \u010do je teraz.<\/p>\n<p>Tak\u017ee, v star\u00fdch dobr\u00fdch \u010dasoch\u2026 najskor\u0161\u00ed sp\u00f4sob dod\u00e1vky, ktor\u00fd som za\u017eil \u2014 boli kazety z magnetof\u00f3nov. M\u00e1m po\u010d\u00edta\u010d BK-0010.01\u2026<\/p>\n<h2>\u00c9ra kalkula\u010diek<\/h2>\n<p>\nNie, bola tu e\u0161te sk\u00f4r, bola tu aj kalkula\u010dka <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%BD%D0%B8%D0%BA%D0%B0_%D0%9C%D0%9A-61\">MK-61<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%BD%D0%B8%D0%BA%D0%B0_%D0%9C%D0%9A-52\">MK-52<\/a><\/noindex>.<\/p>\n<p><img decoding=\"async\" alt=\"Evoluce prost\u0159edk\u016f dod\u00e1n\u00ed, nebo \u00favahy o Dockeru, deb, jar a dal\u0161\u00edch\" src=\"\/wp-content\/uploads\/2019\/03\/ea68507cd83b4da3038cea7329ff1813.jpg\" style=\"display:block;margin: 0 auto;\" \/> Ke\u010f som mal <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%BD%D0%B8%D0%BA%D0%B0_%D0%9C%D0%9A-61\">MK-61<\/a><\/noindex>, sp\u00f4sobom prenosu programu bol oby\u010dajn\u00fd list papiera s mrie\u017ekou, na ktorom bola zap\u00edsan\u00e1 program, ktor\u00fd, ak som ho chcel spusti\u0165, som musel ru\u010dne zap\u00edsa\u0165 do kalkula\u010dky. Chce\u0161 si zahra\u0165 (\u00e1no, dokonca na tejto pravekej kalkula\u010dke boli hry) \u2014 sadne\u0161 si a vp\u00ed\u0161e\u0161 program do kalkula\u010dky. Samozrejme, pri vypnut\u00ed kalkula\u010dky program zmizol. Okrem vlastnoru\u010dne prep\u00edsan\u00fdch k\u00f3dov na papieri, programy sa publikovali v \u010dasopisoch \"R\u00e1dio\" a \"Technika ml\u00e1de\u017ee\" a tie\u017e sa tla\u010dili v knih\u00e1ch tej doby.<\/p>\n<p>\u010eal\u0161ou modifik\u00e1ciou bol kalkula\u010dka <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%BD%D0%B8%D0%BA%D0%B0_%D0%9C%D0%9A-52\">MK-52<\/a><\/noindex>, u\u017e mal ak\u00fasi podobu energonez\u00e1visl\u00e9ho \u00falo\u017eiska d\u00e1t. Teraz u\u017e nebolo potrebn\u00e9 zad\u00e1va\u0165 hru alebo program ru\u010dne, ale po vykonan\u00ed niektor\u00fdch magick\u00fdch pohybov tla\u010didlami sa na\u010d\u00edtala sama.<\/p>\n<p>Objem najv\u00e4\u010d\u0161ieho programu v kalkula\u010dke bol 105 krokov a ve\u013ekos\u0165 trvalej pam\u00e4te v MK-52 \u2014 512 krokov.<\/p>\n<p>Mimochodom, ak s\u00fa medzi \u010ditate\u013emi tohto \u010dl\u00e1nku fan\u00fa\u0161ikovia t\u00fdchto kalkula\u010diek \u2014 pri p\u00edsan\u00ed \u010dl\u00e1nku som na\u0161iel aj emul\u00e1tor kalkula\u010dky pre Android a programy pre\u0148. Po\u010fme sp\u00e4\u0165 do minulosti!<\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/play.google.com\/store\/apps\/details?id=com.cax.pmk.ext\">Emul\u00e1tor MK-61 pre Android<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/xvadim.github.io\/xbasoft\/pmk\/pmk.html\">Katal\u00f3g programov pre MK-61<\/a><\/noindex><\/li>\n<\/ul>\n<p><\/p>\n<blockquote><p><b>Mal\u00e9 odbo\u010denie k MK-52<\/b> <i>(z wikipedie)<\/i><\/p>\n<p>MK-52 letel do vesm\u00edru na lodi \u201eSojuz TM-7\u201c. Mal sa pou\u017ei\u0165 na v\u00fdpo\u010det trajekt\u00f3rie prist\u00e1tia, ak by sa pokazil palubn\u00fd po\u010d\u00edta\u010d.<\/p>\n<p>MK-52 s blokom roz\u0161\u00edrenia pam\u00e4te \u201eElektronika-Astro\u201c sa od roku 1988 dod\u00e1val na lode n\u00e1morn\u00edctva ako s\u00fa\u010das\u0165 v\u00fdpo\u010dtov\u00e9ho komplexu pre navig\u00e1ciu. <\/p><\/blockquote>\n<h2>Prv\u00e9 osobn\u00e9 po\u010d\u00edta\u010de<\/h2>\n<p><img decoding=\"async\" alt=\"Evoluce prost\u0159edk\u016f dod\u00e1n\u00ed, nebo \u00favahy o Dockeru, deb, jar a dal\u0161\u00edch\" src=\"\/wp-content\/uploads\/2019\/03\/5d443c3919023854c53c83ac2265cea3.jpg\" style=\"display:block;margin: 0 auto;\" \/> Vr\u00e1\u0165me sa do \u010dias <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%91%D0%9A_(%D1%81%D0%B5%D0%BC%D0%B5%D0%B9%D1%81%D1%82%D0%B2%D0%BE_%D0%BA%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80%D0%BE%D0%B2)\">BK-0010<\/a><\/noindex>. Samozrejme, \u017ee pam\u00e4te tam bolo viac a zad\u00e1va\u0165 k\u00f3d z papierika u\u017e nebola mo\u017enos\u0165 (hoci v prv\u00fdch \u010dasoch som to robil pr\u00e1ve tak, preto\u017ee in\u00e9 m\u00e9dium jednoducho nebolo). Z\u00e1kladn\u00fdm prostriedkom uchov\u00e1vania a dod\u00e1vania softv\u00e9ru sa st\u00e1vaj\u00fa audiokazety pre magnetof\u00f3ny.<\/p>\n<p><br clear=\"all\"><br \/>\n<br clear=\"all\"><br \/>\n<img decoding=\"async\" alt=\"Evoluce prost\u0159edk\u016f dod\u00e1n\u00ed, nebo \u00favahy o Dockeru, deb, jar a dal\u0161\u00edch\" src=\"\/wp-content\/uploads\/2019\/03\/988316eac02a95a16e15502a826f0653.jpg\" style=\"display:block;margin: 0 auto;\" \/>Uchov\u00e1vanie na kazete zvy\u010dajne pozost\u00e1valo z jedn\u00e9ho alebo dvoch bin\u00e1rnych s\u00faborov, v\u0161etko ostatn\u00e9 bolo ulo\u017een\u00e9 vo vn\u00fatri. Spo\u013eahlivos\u0165 bola ve\u013emi n\u00edzka, musel som ma\u0165 2-3 k\u00f3pie programu. \u010cas na\u010d\u00edtania tie\u017e nebol pote\u0161uj\u00faci, nad\u0161enci experimentovali s r\u00f4znymi frekven\u010dn\u00fdmi k\u00f3dovaniami, aby prekonali tieto nev\u00fdhody. V tom \u010dase som sa e\u0161te neza\u010dal profesion\u00e1lne zaobera\u0165 v\u00fdvojom softv\u00e9ru (okrem jednoduch\u00fdch programov v Basicu), tak\u017ee bohu\u017eia\u013e nem\u00f4\u017eem podrobne op\u00edsa\u0165, ako to v\u0161etko fungovalo. Skuto\u010dnos\u0165, \u017ee po\u010d\u00edta\u010d mal iba RAM, do zna\u010dnej miery ur\u010dovala jednoduchos\u0165 sch\u00e9my uchov\u00e1vania d\u00e1t.<\/p>\n<h2>Objavenie spo\u013eahliv\u00fdch a ve\u013ek\u00fdch \u00falo\u017en\u00fdch m\u00e9di\u00ed<\/h2>\n<p>\nNesk\u00f4r sa objavuj\u00fa disketov\u00e9 jednotky, proces kop\u00edrovania sa zjednodu\u0161uje, zvy\u0161uje sa spo\u013eahlivos\u0165.<br \/>\nAle situ\u00e1cia sa z\u00e1sadne men\u00ed a\u017e vtedy, ke\u010f sa objavia dostato\u010dne ve\u013ek\u00e9 lok\u00e1lne \u00falo\u017eisk\u00e1 v podobe HDD.<\/p>\n<p>Z\u00e1sadne sa men\u00ed typ dod\u00e1vky: objavuj\u00fa sa in\u0161tala\u010dn\u00e9 programy, ktor\u00e9 riadia proces konfigur\u00e1cie syst\u00e9mu a tie\u017e \u010distenie po odstr\u00e1nen\u00ed, preto\u017ee programy sa u\u017e nielen na\u010d\u00edtavaj\u00fa do pam\u00e4te, ale kop\u00edruj\u00fa do lok\u00e1lneho \u00falo\u017eiska, z ktor\u00e9ho je potrebn\u00e9 vedie\u0165 aj odstra\u0148ova\u0165 nepotrebn\u00e9.<\/p>\n<p>S\u00fa\u010dasne sa zvy\u0161uje zlo\u017eitost dod\u00e1van\u00e9ho softv\u00e9ru.<br \/>\nPo\u010det s\u00faborov v dod\u00e1vke sa zvy\u0161uje z jedn\u00e9ho na stovky a tis\u00edce, za\u010d\u00ednaj\u00fa konflikty verzi\u00ed kni\u017en\u00edc a in\u00e9 radosti, ke\u010f r\u00f4zne programy pou\u017e\u00edvaj\u00fa tie ist\u00e9 d\u00e1ta.<\/p>\n<p><img decoding=\"async\" alt=\"Evoluce prost\u0159edk\u016f dod\u00e1n\u00ed, nebo \u00favahy o Dockeru, deb, jar a dal\u0161\u00edch\" src=\"\/wp-content\/uploads\/2019\/03\/48af8fca591a1061df45cd619854a59a.jpg\" style=\"display:block;margin: 0 auto;\" \/> V t\u00fdch \u010dasoch som e\u0161te nevedel o existencii Linuxu, \u017eil som vo svete MS DOS a nesk\u00f4r Windows, pri\u010dom som p\u00edsal v Borland Pascal a Delphi, ob\u010das som sa pozrel na C++. Mnoh\u00ed na dod\u00e1vku produktov vtedy pou\u017e\u00edvali InstallShield. <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/InstallShield\">ru.wikipedia.org\/wiki\/InstallShield<\/a><\/noindex>, ktor\u00fd \u00faspe\u0161ne rie\u0161il v\u0161etky zadan\u00e9 \u00falohy nasadenia a konfigur\u00e1cie softv\u00e9ru.<\/p>\n<p><br clear=\"all\"><br \/>\n<br clear=\"all\"><\/p>\n<h2>\u00c9ra internetu.<\/h2>\n<p>\nPostupne sa zlo\u017eitosti programov\u00fdch syst\u00e9mov e\u0161te zvy\u0161ovali, od monolitick\u00fdch a desktopov\u00fdch aplik\u00e1ci\u00ed prech\u00e1dzalo ku distribuovan\u00fdm syst\u00e9mom, tenk\u00fdm klientom a mikroservisom. Teraz u\u017e bolo potrebn\u00e9 konfigurova\u0165 nielen jednu aplik\u00e1ciu, ale ich cel\u00fa sadu, a to tak, aby spolu spolupracovali.<\/p>\n<p>\u00daplne sa zmenila koncepcia, pri\u0161iel internet a nastala \u00e9ra cloudov\u00fdch slu\u017eieb. E\u0161te st\u00e1le sme boli len na za\u010diatku, v podobe webov\u00fdch str\u00e1nok, zatia\u013e nikto ani nesn\u00edval o nejak\u00fdch slu\u017eb\u00e1ch, ale bol to prelomov\u00fd moment v odvetv\u00ed, ako v oblasti v\u00fdvoja, tak aj dod\u00e1vky aplik\u00e1ci\u00ed.<\/p>\n<p>Pre seba som si uvedomil, \u017ee v tomto momente do\u0161lo k zmene gener\u00e1ci\u00ed v\u00fdvoj\u00e1rov (alebo to bolo len v mojej bl\u00edzkosti) a vytvorilo sa tak\u00e9 pocity, \u017ee v\u0161etky star\u00e9 dobr\u00e9 sp\u00f4soby dod\u00e1vky boli zabudnut\u00e9 v jednom momente a v\u0161etko za\u010dalo odznova: cel\u00fa dod\u00e1vku za\u010dali robi\u0165 na kolene p\u00edsan\u00fdmi skriptami a nazvali to hrdinsky \u201eContinuous delivery\u201c. V skuto\u010dnosti za\u010dalo ak\u00e9si obdobie chaosu, ke\u010f bola star\u00e1 prax zabudnut\u00e1 a nov\u00e1 prakticky neexistovala.<\/p>\n<p>Pam\u00e4t\u00e1m si \u010dasy, ke\u010f u n\u00e1s v spolo\u010dnosti, kde som vtedy pracoval (nebudem ju menova\u0165), namiesto toho, aby sme robili zostavenie cez ant (maven e\u0161te nebol popul\u00e1rny alebo v\u00f4bec neexistoval), \u013eudia jednoducho zostavovali jar v IDE a bezstarostne ho zav\u00e4zovali do SVN. Pod\u013ea toho sa nasadenie skladalo z vy\u0165ahovania s\u00faboru zo SVN a jeho kop\u00edrovania cez SSH na potrebn\u00fd stroj. Tak jednoducho a surovo.<\/p>\n<p>V tom istom \u010dase sa dod\u00e1vka jednoduch\u00fdch webov\u00fdch str\u00e1nok na PHP robila \u00faplne primit\u00edvne, jednoducho kop\u00edrovan\u00edm upraven\u00e9ho s\u00faboru cez FTP na cie\u013eov\u00fd server. Niekedy nebolo ani tak\u00e9to nie\u010do \u2014 k\u00f3d sa opravoval priamo na produktovom serveri, a bolo v\u00fdnimo\u010dn\u00e9, ak existovali nejak\u00e9 z\u00e1lohy.<\/p>\n<p><br clear=\"all\"><\/p>\n<h4>RPM- a DEB-pakety<\/h4>\n<p>\n<img decoding=\"async\" alt=\"Evoluce prost\u0159edk\u016f dod\u00e1n\u00ed, nebo \u00favahy o Dockeru, deb, jar a dal\u0161\u00edch\" src=\"\/wp-content\/uploads\/2019\/03\/8590e7db6c67cad4b97654465ba5e946.jpg\" style=\"display:block;margin: 0 auto;\" \/>Na druhej strane, s rozvojom internetu za\u010dali \u010doraz viac z\u00edskava\u0165 na popularite syst\u00e9my podobn\u00e9 UNIX-u, konkr\u00e9tne v tom \u010dase som objavil RedHat Linux 6, pribli\u017ene v roku 2000. Samozrejme, \u017ee aj tam boli ist\u00e9 prostriedky na dod\u00e1vku softv\u00e9ru, pod\u013ea Wikip\u00e9die, RPM ako hlavn\u00fd spr\u00e1vca bal\u00ed\u010dkov sa objavil u\u017e v roku 1995, vo verzii RedHat Linux 2.0. A od tej doby po s\u00fa\u010dasnos\u0165 sa syst\u00e9m dod\u00e1va vo forme RPM bal\u00ed\u010dkov a \u00faspe\u0161ne existuje a vyv\u00edja sa.<\/p>\n<p>Distrib\u00facie rodiny Debian i\u0161li podobnou cestou a implementovali dod\u00e1vku vo forme deb bal\u00ed\u010dkov, \u010do je nezmenen\u00e9 a\u017e do dnes.<\/p>\n<p>Spr\u00e1vcovia bal\u00ed\u010dkov umo\u017e\u0148uj\u00fa dod\u00e1va\u0165 samotn\u00e9 softv\u00e9rov\u00e9 produkty, konfigurova\u0165 ich po\u010das in\u0161tal\u00e1cie, spravova\u0165 z\u00e1vislosti medzi r\u00f4znymi bal\u00ed\u010dkami, vykon\u00e1va\u0165 odin\u0161tal\u00e1ciu produktov a \u010disti\u0165 nadbyto\u010dn\u00e9 po\u010das odin\u0161tal\u00e1cie. T.j. v\u00e4\u010d\u0161inou je to v\u0161etko, \u010do je potrebn\u00e9, pr\u00e1ve preto pre\u017eili nieko\u013eko desa\u0165ro\u010d\u00ed prakticky bez zmien.<\/p>\n<p>Cloud priniesol do spr\u00e1vcov bal\u00ed\u010dkov in\u0161tal\u00e1ciu nielen z fyzick\u00fdch nosi\u010dov, ale aj z cloudov\u00fdch repozit\u00e1rov, ale principi\u00e1lne sa m\u00e1lo zmenilo.<\/p>\n<p>Treba poznamena\u0165, \u017ee v s\u00fa\u010dasnosti existuj\u00fa ur\u010dit\u00e9 snahy o opustenie deb a prechod na snap bal\u00ed\u010dky, ale o tom nesk\u00f4r.<\/p>\n<p>Tak\u017ee toto nov\u00e9 \u043f\u043e\u043a\u043e\u043b\u0435\u043d\u0438\u0435 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043d\u0435 \u0437\u043d\u0430\u043b\u043e \u043d\u0438 DEB, \u043d\u0438 RPM, \u0442\u043e\u0436\u0435 \u043f\u043e\u0442\u0438\u0445\u043e\u043d\u044c\u043a\u0443 \u0440\u043e\u0441\u043b\u043e, \u043d\u0430\u0431\u0438\u0440\u0430\u043b\u043e\u0441\u044c \u043e\u043f\u044b\u0442\u0430, \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u044b \u0443\u0441\u043b\u043e\u0436\u043d\u044f\u043b\u0438\u0441\u044c, \u0438 \u043d\u0443\u0436\u043d\u044b \u0431\u044b\u043b\u0438 \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0431\u043e\u043b\u0435\u0435 \u0440\u0430\u0437\u0443\u043c\u043d\u044b\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u043f\u043e\u0441\u0442\u0430\u0432\u043a\u0438, \u043d\u0435\u0436\u0435\u043b\u0438 FTP, bash-\u0441\u043a\u0440\u0438\u043f\u0442\u0438\u043a\u0438 \u0438 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 \u0441\u0442\u0443\u0434\u0435\u043d\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u0434\u0435\u043b\u043a\u0438. <br \/>\nA tu prich\u00e1dza Docker, ak\u00e1si zmes virtualiz\u00e1cie, rozde\u013eovania zdrojov a sp\u00f4sobu dod\u00e1vky. To je teraz m\u00f3dne, modern\u00e9, ale je potrebn\u00fd pre v\u0161etko? Je to strieborn\u00e1 gu\u013eka?<\/p>\n<p>Pod\u013ea mojich pozorovan\u00ed, ve\u013emi \u010dasto je Docker pon\u00fakan\u00fd nie ako rozumn\u00e1 vo\u013eba, ale jednoducho preto, \u017ee o tom, na jednej strane, hovoria v komunite a t\u00ed, ktor\u00ed ho pon\u00fakaj\u00fa, poznaj\u00fa len to. Na druhej strane, o star\u00fdch dobr\u00fdch syst\u00e9moch balenia sa v\u00e4\u010d\u0161inou ml\u010d\u00ed \u2014 s\u00fa tu a robia svoju pr\u00e1cu potichu a nen\u00e1padne. V takejto situ\u00e1cii nie je ve\u013ea na v\u00fdber \u2014 vo\u013eba je jasn\u00e1 \u2014 Docker.<\/p>\n<p>Pok\u00fasim sa podeli\u0165 o sk\u00fasenosti, ako u n\u00e1s prebiehalo zav\u00e1dzanie Dockeru a \u010do nakoniec vzi\u0161lo.<\/p>\n<p><br clear=\"all\"><\/p>\n<h4>Vlastn\u00e9 skripty<\/h4>\n<p>\nP\u00f4vodne boli bash skripty, ktor\u00e9 nasadzovali jar arch\u00edvy na po\u017eadovan\u00e9 stroje. T\u00fdmto procesom riadil Jenkins. To \u00faspe\u0161ne fungovalo, ke\u010f\u017ee samotn\u00fd jar arch\u00edv u\u017e je zostava, ktor\u00e1 obsahuje triedy, zdroje a dokonca aj konfigur\u00e1ciu. Ak do neho vlo\u017e\u00edte v\u0161etko na maximum \u2014 rozlo\u017ei\u0165 ho pomocou skriptu nie je to naj\u0165a\u017e\u0161ie, \u010do je potrebn\u00e9.<\/p>\n<p>Av\u0161ak skripty maj\u00fa nieko\u013eko nev\u00fdhod:<\/p>\n<ul>\n<li> skripty sa zvy\u010dajne p\u00ed\u0161u na r\u00fdchlo a s\u00fa preto tak\u00e9 primit\u00edvne, \u017ee obsahuj\u00fa iba jeden najoptim\u00e1lnej\u0161\u00ed scen\u00e1r. K tomu prispieva skuto\u010dnos\u0165, \u017ee v\u00fdvoj\u00e1r sa zauj\u00edma o \u010do najr\u00fdchlej\u0161ie dodanie, a norm\u00e1lny skript si vy\u017eaduje invest\u00edciu slu\u0161n\u00e9ho mno\u017estva zdrojov.<\/li>\n<li> ako d\u00f4sledok predch\u00e1dzaj\u00faceho bodu skripty neobsahuj\u00fa proced\u00faru odin\u0161talovania.<\/li>\n<li> nie je stanoven\u00e1 proced\u00fara upgrade.<\/li>\n<li> pri vzniku nov\u00e9ho produktu je potrebn\u00e9 nap\u00edsa\u0165 nov\u00fd skript.<\/li>\n<li> neexistuje podpora z\u00e1vislost\u00ed.<\/li>\n<\/ul>\n<p>\nSamozrejme, m\u00f4\u017eete nap\u00edsa\u0165 zlo\u017eit\u00fd skript, ale, ako som u\u017e p\u00edsal vy\u0161\u0161ie \u2014 to je \u010das na v\u00fdvoj, a nie je to mal\u00e9 mno\u017estvo, a \u010dasu, ako je zn\u00e1me, v\u017edy ch\u00fdba.<\/p>\n<p>To v\u0161etko zjavne obmedzuje okruh aplik\u00e1ci\u00ed tohto sp\u00f4sobu nasadenia iba na najjednoduch\u0161ie syst\u00e9my. Pri\u0161iel \u010das to zmeni\u0165.<\/p>\n<p><br clear=\"all\"><\/p>\n<h4>Docker<\/h4>\n<p>\n<img decoding=\"async\" alt=\"Evoluce prost\u0159edk\u016f dod\u00e1n\u00ed, nebo \u00favahy o Dockeru, deb, jar a dal\u0161\u00edch\" src=\"\/wp-content\/uploads\/2019\/03\/f9c6180a2775513ce88c5425727817d1.jpg\" style=\"display:block;margin: 0 auto;\" \/>V ur\u010ditom momente k n\u00e1m za\u010dali prich\u00e1dza\u0165 \u010derstvo upe\u010den\u00ed midly, boiluj\u00facimi n\u00e1padmi a sn\u00edvaj\u00face o dockeri. No, vlajka do r\u00fak - rob\u00edme! Boli dve pokusy. Obe ne\u00faspe\u0161n\u00e9 - povedzme, z ve\u013ek\u00fdch amb\u00edci\u00ed, ale nedostato\u010dnej re\u00e1lnej sk\u00fasenosti. Malo sa to ur\u00fdchli\u0165 a dokon\u010di\u0165 za ka\u017ed\u00fa cenu? \u0164a\u017eko \u2014 kolekt\u00edv by mal evolu\u010dne dor\u00e1s\u0165 na potrebn\u00fa \u00farove\u0148, k\u00fdm bude m\u00f4c\u0165 pou\u017e\u00edva\u0165 zodpovedaj\u00face n\u00e1stroje. Navy\u0161e, pri pou\u017e\u00edvan\u00ed hotov\u00fdch docker obrazov sme sa \u010dasto stret\u00e1vali s t\u00fdm, \u017ee tam nespr\u00e1vne fungovala sie\u0165 (\u010do mo\u017eno s\u00faviselo aj so surovos\u0165ou samotn\u00e9ho dockera) alebo bolo zlo\u017eit\u00e9 roz\u0161irova\u0165 cudzie kontajnery.<\/p>\n<p>S ak\u00fdmi nevhodnos\u0165ami sme sa stretli?<\/p>\n<ul>\n<li> Probl\u00e9my so sie\u0165ou v re\u017eime bridge.<\/li>\n<li> Nepohodln\u00e9 sledova\u0165 logy v kontejnery (ak nie s\u00fa nikam presunut\u00e9 do s\u00faborov\u00e9ho syst\u00e9mu hostite\u013esk\u00e9ho stroja).<\/li>\n<li> Ob\u010das zvl\u00e1\u0161tne zamrznutie ElasticSearch vn\u00fatri kontajnera, pr\u00ed\u010dinu sme tak aj nezistili, kontajner je ofici\u00e1lny.<\/li>\n<li> Nepohodln\u00e9 pou\u017e\u00edva\u0165 shell vn\u00fatri kontajnera \u2014 v\u0161etko je zna\u010dne obmedzen\u00e9, ch\u00fdbaj\u00fa obvykl\u00e9 n\u00e1stroje.<\/li>\n<li> Ve\u013ek\u00e1 ve\u013ekos\u0165 zhroma\u017e\u010fovan\u00fdch kontajnerov \u2014 drah\u00e9 na ulo\u017eenie<\/li>\n<li> Kv\u00f4li ve\u013ekej ve\u013ekosti kontajnerov je \u0165a\u017ek\u00e9 udr\u017eiava\u0165 viacero verzi\u00ed<\/li>\n<li> Dlh\u0161ia zostava, na rozdiel od in\u00fdch met\u00f3d (skripty alebo deb bal\u00edky)<\/li>\n<\/ul>\n<p>\nNa druhej strane, pre\u010do je nasadenie Spring slu\u017eby vo forme jar arch\u00edvu hor\u0161ie ako cez deb? Je naozaj potrebn\u00e1 izol\u00e1cia zdrojov? Stoj\u00ed za to vzda\u0165 sa pohodln\u00fdch n\u00e1strojov opera\u010dn\u00e9ho syst\u00e9mu a natla\u010di\u0165 slu\u017ebu do silno obmedzen\u00e9ho kontajnera?<\/p>\n<p>Ako uk\u00e1zala prax \u2014 v realite to nie je nutn\u00e9, deb bal\u00edka sta\u010d\u00ed v 90% pr\u00edpadov.<\/p>\n<p>Kedy nakoniec star\u00fd dobr\u00fd deb nefunguje a kedy naozaj potrebujeme docker?<\/p>\n<p>Pre n\u00e1s to bolo nasadenie slu\u017eieb na Pythone. Mno\u017estvo kni\u017en\u00edc potrebn\u00fdch pre strojov\u00e9 u\u010denie a ch\u00fdbaj\u00facich v \u0161tandardnej dod\u00e1vke opera\u010dn\u00e9ho syst\u00e9mu (a to, \u010do tam bolo \u2014 nie tie verzie), hacky s nastaveniami, potreba r\u00f4znych verzi\u00ed pre r\u00f4zne slu\u017eby, ktor\u00e9 be\u017eia na tej istej hostite\u013eskej s\u00fastave, viedli k tomu, \u017ee jedin\u00fdm rozumn\u00fdm sp\u00f4sobom dodania tejto jadrovej zmesi sa uk\u00e1zal by\u0165 docker. Pr\u00e1ca na zostave docker kontajnera bola menej n\u00e1ro\u010dn\u00e1 ako my\u0161lienka zabali\u0165 to v\u0161etko do samostatn\u00fdch deb bal\u00edkov so z\u00e1vislos\u0165ami, a vlastne nikto by sa do toho v zdravej mysli ani nepustil.<\/p>\n<p>Druh\u00fd bod, kde sa pl\u00e1nuje pou\u017ei\u0165 docker \u2014 na nasadenie slu\u017eieb pod\u013ea sch\u00e9my blue-green deploy. Ale tu chceme dosiahnu\u0165 postupn\u00e9 zvy\u0161ovanie zlo\u017eitosti: najprv sa zostavuj\u00fa deb bal\u00edky a potom u\u017e z nich vznik\u00e1 docker kontajner.<\/p>\n<p><br clear=\"all\"><\/p>\n<h4>Snap bal\u00edky<\/h4>\n<p>\n<img decoding=\"async\" alt=\"Evoluce prost\u0159edk\u016f dod\u00e1n\u00ed, nebo \u00favahy o Dockeru, deb, jar a dal\u0161\u00edch\" src=\"\/wp-content\/uploads\/2019\/03\/8c9001b28757f8427c85e54bca5b4e73.jpg\" style=\"display:block;margin: 0 auto;\" \/> Vr\u00e1\u0165me sa k snap bal\u00edkom. Po prv\u00fdkr\u00e1t sa ofici\u00e1lne objavili v Ubuntu 16.04. Na rozdiel od be\u017en\u00fdch deb bal\u00edkov a rpm bal\u00edkov, snap nes\u00fa v\u0161etky z\u00e1vislosti. Na jednej strane to umo\u017e\u0148uje vyhn\u00fa\u0165 sa konfliktom s kni\u017enicami, na druhej strane \u2014 to vedie k v\u00fdznamnej\u0161\u00edm ve\u013ekostiam v\u00fdsledn\u00e9ho bal\u00edka. Okrem toho, to m\u00f4\u017ee ovplyvni\u0165 aj bezpe\u010dnos\u0165 syst\u00e9mu: v pr\u00edpade dodania snap by si mal v\u00fdvoj\u00e1r, ktor\u00fd vytv\u00e1ra bal\u00edk, sledova\u0165 v\u0161etky zmeny zapojen\u00fdch kni\u017en\u00edc. Vo v\u0161eobecnosti to nie je \u00faplne jednozna\u010dn\u00e9 a univerz\u00e1lne \u0161\u0165astie z ich pou\u017e\u00edvania nenast\u00e1va. Ale, napriek tomu, je to celkom rozumn\u00e1 alternat\u00edva, ak sa ten ist\u00fd Docker pou\u017e\u00edva len ako prostriedok balenia, nie virtualiz\u00e1cie.<\/p>\n<p><br clear=\"all\"><br \/>\nNa z\u00e1ver pou\u017e\u00edvame rozumn\u00fa kombin\u00e1ciu deb bal\u00edkov a Docker kontajnerov, ktor\u00e9 mo\u017eno v niektor\u00fdch pr\u00edpadoch nahrad\u00edme snap bal\u00edkmi.<\/p>\n<p class=\"for_users_only_msg\">Len registrovan\u00ed pou\u017e\u00edvatelia sa m\u00f4\u017eu z\u00fa\u010dastni\u0165 prieskumu. <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/auth\/login\/\">Prihl\u00e1ste sa<\/a><\/noindex>, pros\u00edm.<\/p>\n<h2 class=\"default-block__polling-title\">A \u010do pou\u017e\u00edvate na dod\u00e1vku vy?<\/h2>\n<ul class=\"content-list content-list_polling\">\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Vlastn\u00e9 skripty<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Kop\u00edrujeme ru\u010dne na FTP<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    deb bal\u00edky<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    rpm bal\u00edky<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    snap bal\u00edky<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Docker obrazy<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Obrazy virtu\u00e1lnych strojov<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Klonujeme HDD cel\u00fd<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    puppet<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    ansible<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Other<\/p>\n<\/li>\n<\/ul>\n<p>    Hlasovalo 109 pou\u017e\u00edvate\u013eov. 32 pou\u017e\u00edvate\u013eov sa zdr\u017ealo.<\/p>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/srg\/blog\/444102\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u0430\u043a-\u0442\u043e \u0432 \u043e\u0434\u0438\u043d \u043c\u043e\u043c\u0435\u043d\u0442 \u044f \u0440\u0435\u0448\u0438\u043b \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0442\u0430\u0442\u044c\u044e \u043f\u0440\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u043a\u0443 \u0432 \u0432\u0438\u0434\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u0434\u043e\u043a\u0435\u0440 \u0438 deb-\u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u043d\u043e \u043a\u043e\u0433\u0434\u0430 \u043d\u0430\u0447\u0430\u043b, \u043c\u0435\u043d\u044f \u043f\u043e\u0447\u0435\u043c\u0443-\u0442\u043e \u043f\u043e\u043d\u0435\u0441\u043b\u043e \u0432 \u0434\u0430\u043b\u0435\u043a\u0438\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430 \u043f\u0435\u0440\u0432\u044b\u0445 \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043e\u0432 \u0438 \u0434\u0430\u0436\u0435 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440\u043e\u0432. \u0412 \u043e\u0431\u0449\u0435\u043c, \u0432\u043c\u0435\u0441\u0442\u043e \u0441\u0443\u0445\u0438\u0445 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0434\u043e\u043a\u0435\u0440\u0430 \u0438 deb \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438\u0441\u044c \u0432\u043e\u0442 \u0442\u0430\u043a\u0438\u0435 \u0432\u043e\u0442 \u0440\u0430\u0437\u043c\u044b\u0448\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u0442\u0435\u043c\u0443 \u044d\u0432\u043e\u043b\u044e\u0446\u0438\u0438, \u043a\u043e\u0438 \u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e \u043d\u0430 \u0412\u0430\u0448 \u0441\u0443\u0434. \u041b\u044e\u0431\u043e\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442, [&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-42175","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u0430\u043a-\u0442\u043e \u0432 \u043e\u0434\u0438\u043d \u043c\u043e\u043c\u0435\u043d\u0442.\" \/>\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\/sk\/blog\/administrirovanie\/evolyutsiya-sredstv-postavki-ili-razmyshleniya-o-docker-deb-jar-i-prochem\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sk_SK\" \/>\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\u042d\u0432\u043e\u043b\u044e\u0446\u0438\u044f \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u043f\u043e\u0441\u0442\u0430\u0432\u043a\u0438, \u0438\u043b\u0438 \u0440\u0430\u0437\u043c\u044b\u0448\u043b\u0435\u043d\u0438\u044f \u043e Docker, deb, jar \u0438 \u043f\u0440\u043e\u0447\u0435\u043c | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u0430\u043a-\u0442\u043e \u0432 \u043e\u0434\u0438\u043d \u043c\u043e\u043c\u0435\u043d\u0442.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/evolyutsiya-sredstv-postavki-ili-razmyshleniya-o-docker-deb-jar-i-prochem\" \/>\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-03-17T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T10:45:00+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\udd47Evol\u00facia dod\u00e1vac\u00edch prostriedkov, alebo \u00favahy o Docker, deb, jar a in\u00fdch | ProHoster","description":"V nejakom momente.","canonical_url":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/evolyutsiya-sredstv-postavki-ili-razmyshleniya-o-docker-deb-jar-i-prochem","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sk_SK","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\u042d\u0432\u043e\u043b\u044e\u0446\u0438\u044f \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u043f\u043e\u0441\u0442\u0430\u0432\u043a\u0438, \u0438\u043b\u0438 \u0440\u0430\u0437\u043c\u044b\u0448\u043b\u0435\u043d\u0438\u044f \u043e Docker, deb, jar \u0438 \u043f\u0440\u043e\u0447\u0435\u043c | ProHoster","og:description":"\u041a\u0430\u043a-\u0442\u043e \u0432 \u043e\u0434\u0438\u043d \u043c\u043e\u043c\u0435\u043d\u0442.","og:url":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/evolyutsiya-sredstv-postavki-ili-razmyshleniya-o-docker-deb-jar-i-prochem","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-03-17T21:00:00+00:00","article:modified_time":"2020-02-18T10:45:00+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"42175","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 07:30:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 00:04:29","updated":"2026-01-22 07:30:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/42175","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/comments?post=42175"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/42175\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media?parent=42175"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/categories?post=42175"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/tags?post=42175"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}