{"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\/sq\/blog\/administrirovanie\/evolyutsiya-sredstv-postavki-ili-razmyshleniya-o-docker-deb-jar-i-prochem","title":{"rendered":"Evolucioni i mjeteve t\u00eb shp\u00ebrndarjes, ose refleksione mbi Docker, deb, jar dhe t\u00eb tjera","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Evolucioni i mjeteve t\u00eb shp\u00ebrndarjes, ose refleksione mbi Docker, deb, jar dhe t\u00eb tjera\" src=\"\/wp-content\/uploads\/2019\/03\/3c677d0628824497039901c0179a8749.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNj\u00eb her\u00eb vendosa t\u00eb shkruaj nj\u00eb artikull n\u00eb lidhje me shp\u00ebrndarjen p\u00ebrmes kontejner\u00ebve Docker dhe paketave deb, por kur fillova, ndjeva se m\u00eb shpuri n\u00eb koh\u00eb t\u00eb larg\u00ebta t\u00eb kompjuter\u00ebve t\u00eb par\u00eb personal\u00eb dhe madje kalkulator\u00ebve. N\u00eb vend t\u00eb krahasimeve t\u00eb thata midis Docker dhe deb, m\u00eb dol\u00ebn k\u00ebto reflektime mbi tem\u00ebn e evolucionit, t\u00eb cilat po ju paraqes.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\n\u00c7do produkt, \u00e7far\u00ebdo q\u00eb t\u00eb jet\u00eb, duhet n\u00eb nj\u00eb m\u00ebnyr\u00eb t\u00eb arrij\u00eb n\u00eb serverat produktiv\u00eb, duhet t\u00eb konfigurohet dhe t\u00eb niset. Ky \u00ebsht\u00eb subjekti i k\u00ebtij artikulli.<\/p>\n<p>Un\u00eb do t\u00eb reflektoj n\u00eb nj\u00eb kontekst historik, \"\u00e7far\u00eb shoh \u2014 p\u00ebr at\u00eb k\u00ebndoj\", \u00e7far\u00eb kam par\u00eb kur fillova t\u00eb shkruaj kod dhe \u00e7far\u00eb v\u00ebzhgoj tani, \u00e7far\u00eb ne vet\u00eb po p\u00ebrdorim aktualisht dhe pse. Artikulli nuk pretendon t\u00eb jet\u00eb nj\u00eb hulumtim i plot\u00eb, disa pika jan\u00eb l\u00ebn\u00eb jasht\u00eb, ky \u00ebsht\u00eb k\u00ebndv\u00ebshtrimi im personal mbi at\u00eb q\u00eb ishte dhe \u00e7far\u00eb \u00ebsht\u00eb tani.<\/p>\n<p>Pra, n\u00eb vitet e vjetra t\u00eb mira... m\u00ebnyra m\u00eb e hershme e shp\u00ebrndarjes, q\u00eb un\u00eb p\u00ebrjetova \u2014 ishin kasetat e tapeve. Kishin nj\u00eb kompjuter BK-0010.01...<\/p>\n<h2>Epoka e kalkulator\u00ebve<\/h2>\n<p>\nJo, kishte edhe nj\u00eb moment m\u00eb t\u00eb hersh\u00ebm, kishte kalkulatorin <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> dhe <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=\"Evolucioni i mjeteve t\u00eb shp\u00ebrndarjes, ose refleksione mbi Docker, deb, jar dhe t\u00eb tjera\" src=\"\/wp-content\/uploads\/2019\/03\/ea68507cd83b4da3038cea7329ff1813.jpg\" style=\"display:block;margin: 0 auto;\" \/> I remember when I had <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>, the way to transfer the program was a regular grid paper, on which the program was written. To launch it manually when needed, one would write it down into the calculator. Want to play (yes, yes, even on this ancient calculator there were games) \u2014 you sit down and enter the program into the calculator. Naturally, when the calculator was turned off, the program would vanish into oblivion. Besides the codes written by hand on paper, programs were published in magazines like 'Radio' and 'Youth Technique', as well as printed in books of that era.<\/p>\n<p>The next modification was the calculator <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>, which already featured some sort of non-volatile memory. Now, the game or program didn\u2019t have to be entered manually; after performing some magical button sequences, it would load itself.<\/p>\n<p>The largest program size in the calculator was 105 steps, and the constant memory size in the MK-52 was 512 steps.<\/p>\n<p>N\u00eb fakt, n\u00ebse ka pasionar\u00eb t\u00eb k\u00ebtyre kalkulator\u00ebve q\u00eb lexojn\u00eb k\u00ebt\u00eb artikull \u2014 gjat\u00eb shkrimit t\u00eb artikullit, gjeta dhe nj\u00eb emulator kalkulatori p\u00ebr Android, si dhe programe p\u00ebr t\u00eb. Shk\u00ebmbehu n\u00eb t\u00eb kaluar\u00ebn!<\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/play.google.com\/store\/apps\/details?id=com.cax.pmk.ext\">Emulatori MK-61 p\u00ebr Android<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/xvadim.github.io\/xbasoft\/pmk\/pmk.html\">Katalogu i programeve p\u00ebr MK-61<\/a><\/noindex><\/li>\n<\/ul>\n<p><\/p>\n<blockquote><p><b>Nj\u00eb shpjegim i vog\u00ebl p\u00ebr MK-52<\/b> <i>(nga Wikipedia)<\/i><\/p>\n<p>MK-52 fluturonte n\u00eb hap\u00ebsir\u00eb me anijen 'Soyuz TM-7'. Ai ishte parashikuar t\u00eb p\u00ebrdorej p\u00ebr llogaritjen e trajektoreve t\u00eb uljes n\u00ebse kompjuteri i bordit d\u00ebshtonte.<\/p>\n<p>MK-52 me bllokun e zgjerimit t\u00eb memories 'Elektronika-Astro' u d\u00ebrgua n\u00eb anijet e Marin\u00ebs nga viti 1988, si pjes\u00eb e kompleksit t\u00eb llogaritjeve t\u00eb ndihm\u00ebs p\u00ebr navigacionin. <\/p><\/blockquote>\n<h2>Kompjuter\u00ebt personal\u00eb t\u00eb par\u00eb<\/h2>\n<p><img decoding=\"async\" alt=\"Evolucioni i mjeteve t\u00eb shp\u00ebrndarjes, ose refleksione mbi Docker, deb, jar dhe t\u00eb tjera\" src=\"\/wp-content\/uploads\/2019\/03\/5d443c3919023854c53c83ac2265cea3.jpg\" style=\"display:block;margin: 0 auto;\" \/> Le t\u00eb kthehemi n\u00eb koh\u00ebt <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>. Natyrisht, q\u00eb po pati m\u00eb shum\u00eb memorie dhe ishte krejt\u00ebsisht e pamundur t\u00eb shkruaje kod nga nj\u00eb let\u00ebr (ndon\u00ebse p\u00ebr fillimin e koh\u00ebs un\u00eb e b\u00ebja k\u00ebt\u00eb, sepse nuk kishte asgj\u00eb tjet\u00ebr p\u00ebr ruajtje). Skuadrat kryesore p\u00ebr ruajtjen dhe shp\u00ebrndarjen e softuerit b\u00ebn\u00eb kasetat audio p\u00ebr magnetofon\u00ebt.<\/p>\n<p><br clear=\"all\"><br \/>\n<br clear=\"all\"><br \/>\n<img decoding=\"async\" alt=\"Evolucioni i mjeteve t\u00eb shp\u00ebrndarjes, ose refleksione mbi Docker, deb, jar dhe t\u00eb tjera\" src=\"\/wp-content\/uploads\/2019\/03\/988316eac02a95a16e15502a826f0653.jpg\" style=\"display:block;margin: 0 auto;\" \/>Ruajtja n\u00eb kaset\u00eb zakonisht ishte n\u00eb form\u00ebn e nj\u00eb ose dy skedar\u00ebve binar\u00eb, gjith\u00eb e tjera ishte brenda. Besueshm\u00ebria ishte shum\u00eb e ul\u00ebt, duhej t\u00eb mbaje 2-3 kopje t\u00eb programit. Koha e ngarkimit gjithashtu nuk ishte e k\u00ebnaqshme, entuziast\u00ebt e eksperimentonin me kodimin e ndrysh\u00ebm t\u00eb frekuencave p\u00ebr t\u00eb luftuar k\u00ebto mang\u00ebsi. Un\u00eb vet\u00eb n\u00eb at\u00eb koh\u00eb nuk merresha ende me zhvillimin profesional t\u00eb softuerit (p\u00ebrve\u00e7 disa programeve t\u00eb thjeshta n\u00eb BASIC), prandaj p\u00ebr fat t\u00eb keq nuk mund t\u00eb tregoj n\u00eb detaje se si ishte e gjith\u00eb kjo brenda. Fakti q\u00eb n\u00eb kompjuter kishte vet\u00ebm RAM n\u00eb mas\u00eb t\u00eb madhe p\u00ebrcaktonte thjesht\u00ebsin\u00eb e skem\u00ebs s\u00eb ruajtjes s\u00eb t\u00eb dh\u00ebnave.<\/p>\n<h2>Shfaqja e mediave t\u00eb informacionit t\u00eb besueshme dhe t\u00eb m\u00ebdha<\/h2>\n<p>\nM\u00eb von\u00eb shfaqen disketat, procesi i kopjimit b\u00ebhet m\u00eb i thjesht\u00eb, besueshm\u00ebria rritet.<br \/>\nPor situata ndryshon rr\u00ebnj\u00ebsisht vet\u00ebm kur shfaqen ruajtjet lokale mjaft t\u00eb m\u00ebdha n\u00eb form\u00ebn e HDD.<\/p>\n<p>Ndryshon themelisht tipi i shp\u00ebrndarjes: shfaqen programet-instaluese q\u00eb menaxhojn\u00eb procesin e konfigurimit t\u00eb sistemit dhe gjithashtu pastrimin pas fshirjes, pasi programet nuk thjesht lexohen n\u00eb kujtes\u00eb, por kopjohen n\u00eb ruajtjen lokale, nga e cila duhet t\u00eb jemi n\u00eb gjendje t\u00eb pastroni at\u00eb q\u00eb nuk nevojitet kur \u00ebsht\u00eb e nevojshme.<\/p>\n<p>Paralelisht, rritet kompleksiteti i softuerit t\u00eb dor\u00ebzuar.<br \/>\nNumri i skedave n\u00eb dor\u00ebzim rritet nga nj\u00eb n\u00eb qindra dhe mij\u00ebra, fillojn\u00eb konfliktet e versioneve t\u00eb bibliotekave dhe g\u00ebzimet e tjera, kur programet e ndryshme p\u00ebrdorin t\u00eb nj\u00ebjtat t\u00eb dh\u00ebna.<\/p>\n<p><img decoding=\"async\" alt=\"Evolucioni i mjeteve t\u00eb shp\u00ebrndarjes, ose refleksione mbi Docker, deb, jar dhe t\u00eb tjera\" src=\"\/wp-content\/uploads\/2019\/03\/48af8fca591a1061df45cd619854a59a.jpg\" style=\"display:block;margin: 0 auto;\" \/> N\u00eb ato koh\u00eb, p\u00ebr mua nuk kishte ende hapur ekzistenc\u00ebn e Linux-it, jetoja n\u00eb bot\u00ebn e MS DOS dhe, m\u00eb von\u00eb, Windows, duke shkruar n\u00eb Borland Pascal dhe Delphi, ndonj\u00ebher\u00eb duke shikuar n\u00eb drejtim t\u00eb C++. P\u00ebr shp\u00ebrndarjen e produkteve n\u00eb ato koh\u00eb, shum\u00eb p\u00ebrdornin InstallShield <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/InstallShield\">ru.wikipedia.org\/wiki\/InstallShield<\/a><\/noindex>, i cili zgjidhte me sukses t\u00eb gjitha detyrat e vendosura t\u00eb shp\u00ebrndarjes dhe konfigurimit t\u00eb softuerit.<\/p>\n<p><br clear=\"all\"><br \/>\n<br clear=\"all\"><\/p>\n<h2>Epoka e internetit<\/h2>\n<p>\nGradualisht, kompleksiteti i sistemeve softuerike po rritet, nga monolit\u00ebt dhe aplikacionet desktop, po kalojm\u00eb n\u00eb sisteme t\u00eb shp\u00ebrndara, klient\u00eb t\u00eb holl\u00eb dhe mikrosh\u00ebrbime. Tani duhet t\u00eb konfigurojm\u00eb jo nj\u00eb program t\u00eb vet\u00ebm, por nj\u00eb grup t\u00eb tyre, duke siguruar q\u00eb ato t\u00eb funksionojn\u00eb s\u00eb bashku.<\/p>\n<p>Koncepti \u00ebsht\u00eb nd\u00ebrruar plot\u00ebsisht, ka ardhur Interneti, dhe ka filluar epoka e sh\u00ebrbimeve n\u00eb re. N\u00eb at\u00eb koh\u00eb, ende ishim n\u00eb faz\u00ebn fillestare, n\u00eb form\u00ebn e faqeve, askush nuk \u00ebnd\u00ebrronte p\u00ebr sh\u00ebrbime t\u00eb tilla. Por ky ishte nj\u00eb moment ky\u00e7 n\u00eb industri, si p\u00ebr zhvillimin, ashtu edhe p\u00ebr shp\u00ebrndarjen e aplikacioneve.<\/p>\n<p>Kam v\u00ebn\u00eb re se n\u00eb at\u00eb moment ndodhi nj\u00eb nd\u00ebrrim gjeneratash zhvilluesish (ose ishte vet\u00ebm n\u00eb mjedisin tim), dhe krijohej ndjenja se t\u00eb gjith\u00eb metodat e vjetra t\u00eb shp\u00ebrndarjes ishin harruar n\u00eb nj\u00eb moment, dhe gjith\u00e7ka filloi nga e para: e gjith\u00eb shp\u00ebrndarja b\u00ebhej p\u00ebrmes skripteve t\u00eb improvizuara dhe e quajt\u00ebn me krenari \"Continuous delivery\". N\u00eb fakt filloi nj\u00eb periudh\u00eb ngat\u00ebrrese, kur e kaluara ishte e harruar dhe e reja thjesht nuk ekzistonte.<\/p>\n<p>E mbaj mend koh\u00ebt kur n\u00eb kompanin\u00eb ku punoja (nuk do ta p\u00ebrmend emrin), n\u00eb vend q\u00eb t\u00eb b\u00ebnim nd\u00ebrtimin p\u00ebrmes ant (maven ende nuk ishte popullor ose nuk ekzistonte fare), njer\u00ebzit thjesht ndanin jar n\u00eb IDE dhe e komitonin pa u shqet\u00ebsuar n\u00eb SVN. Si rezultat, implementimi p\u00ebrfshinte marrjen e skedarit nga SVN dhe kopjimin e tij p\u00ebrmes SSH n\u00eb makinerin\u00eb e duhur. Kaq thjesht\u00eb dhe meskinisht.<\/p>\n<p>N\u00eb t\u00eb nj\u00ebjt\u00ebn koh\u00eb, ofrimi i faqeve t\u00eb thjeshta n\u00eb PHP b\u00ebhej nj\u00eb m\u00ebnyr\u00eb krejt\u00ebsisht primitive duke kopjuar thjesht skedarin e rregulluar p\u00ebrmes FTP n\u00eb makinerin\u00eb e synuar. Ndonj\u00ebher\u00eb nuk kishte asgj\u00eb t\u00eb till\u00eb \u2014 kodi dukej n\u00eb jet\u00ebn reale n\u00eb serverin produktiv, dhe ishte shum\u00eb e ve\u00e7ant\u00eb n\u00ebse kishte ndonj\u00eb rezerv\u00eb diku.<\/p>\n<p><br clear=\"all\"><\/p>\n<h4>RPM- dhe DEB-pakete<\/h4>\n<p>\n<img decoding=\"async\" alt=\"Evolucioni i mjeteve t\u00eb shp\u00ebrndarjes, ose refleksione mbi Docker, deb, jar dhe t\u00eb tjera\" src=\"\/wp-content\/uploads\/2019\/03\/8590e7db6c67cad4b97654465ba5e946.jpg\" style=\"display:block;margin: 0 auto;\" \/>Nga ana tjet\u00ebr, me zhvillimin e internetit, sistemet UNIX-like filluan t\u00eb fitonin popullaritet gjithnj\u00eb e m\u00eb shum\u00eb, sidomos n\u00eb at\u00eb koh\u00eb p\u00ebr vete zbulova RedHat Linux 6, rreth vitit 2000. Sigurisht, ato kishin disa mjete p\u00ebr shp\u00ebrndarjen e softuerit; sipas Wikipedias, RPM si menaxheri kryesor i pakove u shfaq n\u00eb 1995, n\u00eb versionin RedHat Linux 2.0. Dhe nga ajo koh\u00eb e deri n\u00eb dit\u00ebt e sotme, sistemi ofrohet n\u00eb form\u00ebn e pakove RPM dhe ekziston e zhvillohet me sukses.<\/p>\n<p>Distribucioni i familjes Debian ndoqi nj\u00eb rrug\u00eb t\u00eb ngjashme dhe realizoi shp\u00ebrndarjen n\u00eb form\u00ebn e paketave deb, q\u00eb \u00ebsht\u00eb gjithashtu e pandryshuar deri n\u00eb dit\u00ebt tona.<\/p>\n<p>Menaxher\u00ebt e paketave lejojn\u00eb shp\u00ebrndarjen e produkteve programore, konfigurimin e tyre gjat\u00eb instalimit, menaxhimin e var\u00ebsive midis paketave t\u00eb ndryshme, si dhe heqjen e produkteve dhe pastrimin e tepricave gjat\u00eb deinstalimit. Pra, n\u00eb thelb, k\u00ebto jan\u00eb t\u00eb gjitha q\u00eb duhen, p\u00ebr k\u00ebt\u00eb arsye ato kan\u00eb q\u00ebndruar pothuajse pa ndryshime p\u00ebr disa dekada.<\/p>\n<p>Baza e cloud-it ka sjell\u00eb n\u00eb menaxher\u00ebt e paketave instalimin jo vet\u00ebm nga mbajt\u00ebsit fizik\u00eb, por edhe nga depozitat cloud, megjithat\u00eb, ndryshe pak ka ndryshuar.<\/p>\n<p>Duket se aktualisht ka disa p\u00ebrpjekje p\u00ebr t\u00eb shmangur deb dhe p\u00ebr t\u00eb kaluar n\u00eb paketat snap, por p\u00ebr k\u00ebt\u00eb m\u00eb von\u00eb.<\/p>\n<p>K\u00ebshtu, kjo brezi i ri i zhvilluesve cloud, t\u00eb cil\u00ebt nuk e dinin as DEB as RPM, gjithashtu po rritej ngadal\u00eb, duke fituar p\u00ebrvoj\u00eb, produktet b\u00ebheshin m\u00eb t\u00eb nd\u00ebrlikuara, dhe ishin t\u00eb nevojshme disa m\u00ebnyra m\u00eb t\u00eb arsyeshme t\u00eb shp\u00ebrndarjes, p\u00ebrve\u00e7 FTP, skenar\u00ebve bash dhe prodhimeve t\u00eb tjera t\u00eb ngjashme studentore. <br \/>\nDhe k\u00ebtu n\u00eb sken\u00eb del Docker, nj\u00eb p\u00ebrzierje e virtualizimit, ndarjes s\u00eb burimeve dhe metod\u00ebs s\u00eb shp\u00ebrndarjes. Tani \u00ebsht\u00eb e njohur, rinore, por a \u00ebsht\u00eb nevoja p\u00ebr t\u00eb n\u00eb \u00e7do rast? A \u00ebsht\u00eb kjo nj\u00eb panacee?<\/p>\n<p>Nga v\u00ebzhgimet e mia, shum\u00eb shpesh Docker ofrohet jo si nj\u00eb zgjedhje t\u00eb arsyeshme, por thjesht sepse p\u00ebr t\u00eb flitet n\u00eb komunitet dhe ata q\u00eb e ofrojn\u00eb, e njohin vet\u00ebm at\u00eb. Nga ana tjet\u00ebr, p\u00ebr sistemet e vjetra t\u00eb paketimit kryesisht nuk flitet \u2014 ato ekzistojn\u00eb dhe b\u00ebn\u00eb pun\u00ebn e tyre n\u00eb heshtje dhe pa u v\u00ebn\u00eb re. N\u00eb nj\u00eb situat\u00eb t\u00eb till\u00eb, nuk ka shum\u00eb zgjedhje \u2014 zgjedhja \u00ebsht\u00eb e qart\u00eb \u2014 Docker.<\/p>\n<p>Do t\u00eb provoj t\u00eb ndaj p\u00ebrvoj\u00ebn time, se si u implementua Docker te ne, dhe \u00e7far\u00eb rezultati arrit\u00ebm.<\/p>\n<p><br clear=\"all\"><\/p>\n<h4>Skemat e shkruara vet\u00eb<\/h4>\n<p>\nFillimisht kishim skripte bash, t\u00eb cilat e shp\u00ebrndanin arkiv\u00ebn jar n\u00eb makinat e nevojshme. Jenkins menaxhonte k\u00ebt\u00eb proces. Kjo funksiononte me sukses, mir\u00ebqenia e vet arkiv\u00ebs jar \u00ebsht\u00eb nj\u00eb nd\u00ebrtim q\u00eb p\u00ebrmban klasat, burimet dhe madje edhe konfigurimin. N\u00ebse e mbledhim gjith\u00e7ka n\u00eb maksimum \u2014 q\u00eb ta shp\u00ebrndajm\u00eb at\u00eb me skript \u2014 kjo nuk \u00ebsht\u00eb gj\u00eb e v\u00ebshtir\u00eb.<\/p>\n<p>Por skriptet kan\u00eb disa disavantazhe:<\/p>\n<ul>\n<li> Scriptet zakonisht shkruhen n\u00eb nj\u00eb m\u00ebnyr\u00eb t\u00eb shpejt\u00eb dhe p\u00ebr k\u00ebt\u00eb arsye jan\u00eb kaq primitiv\u00eb, sa q\u00eb p\u00ebrmbajn\u00eb vet\u00ebm nj\u00eb skenar t\u00eb suksessh\u00ebm. Kjo ndihmohet nga fakti q\u00eb zhvilluesi \u00ebsht\u00eb i interesuar p\u00ebr d\u00ebrgimin sa m\u00eb t\u00eb shpejt\u00eb, nd\u00ebrsa nj\u00eb skript normal k\u00ebrkon investim t\u00eb nj\u00eb sasi t\u00eb konsiderueshme burimesh.<\/li>\n<li> Si pasoj\u00eb e pik\u00ebs s\u00eb m\u00ebparshme, skriptet nuk p\u00ebrmbajn\u00eb procedur\u00eb \u00e7instalimi.<\/li>\n<li> Nuk ka nj\u00eb procedur\u00eb t\u00eb vendosur p\u00ebr p\u00ebrdit\u00ebsim.<\/li>\n<li> Meqen\u00ebse shfaqet nj\u00eb produkt i ri, duhet t\u00eb shkruhet nj\u00eb skript i ri.<\/li>\n<li> Nuk ka mb\u00ebshtetje p\u00ebr var\u00ebsit\u00eb.<\/li>\n<\/ul>\n<p>\nSigurisht, mund t\u00eb shkruhet nj\u00eb skript m\u00eb t\u00eb avancuar, por, si\u00e7 kam p\u00ebrmendur m\u00eb par\u00eb, kjo \u00ebsht\u00eb nj\u00eb koh\u00eb zhvillimi, madje jo e vog\u00ebl, dhe si\u00e7 dihet, koha gjithmon\u00eb mungon.<\/p>\n<p>Kjo padyshim kufizon p\u00ebrdorimin e k\u00ebtij m\u00ebnyre t\u00eb shp\u00ebrndarjes vet\u00ebm p\u00ebr sistemi m\u00eb t\u00eb thjeshta. Ka ardhur koha p\u00ebr ta ndryshuar k\u00ebt\u00eb.<\/p>\n<p><br clear=\"all\"><\/p>\n<h4>Docker<\/h4>\n<p>\n<img decoding=\"async\" alt=\"Evolucioni i mjeteve t\u00eb shp\u00ebrndarjes, ose refleksione mbi Docker, deb, jar dhe t\u00eb tjera\" src=\"\/wp-content\/uploads\/2019\/03\/f9c6180a2775513ce88c5425727817d1.jpg\" style=\"display:block;margin: 0 auto;\" \/>N\u00eb nj\u00eb moment, filluan t\u00eb na vijn\u00eb midlat e sapob\u00ebr\u00eb, t\u00eb mbushur me ide dhe t\u00eb pasionuar pas Docker-it. \u00c7far\u00eb t\u00eb themi, flamuri n\u00eb dor\u00eb \u2014 le t\u00eb b\u00ebjm\u00eb! B\u00ebm\u00eb dy p\u00ebrpjekje. T\u00eb dyja d\u00ebshtuan \u2014 th\u00ebn\u00eb ndryshe, p\u00ebr shkak t\u00eb ambicieve t\u00eb m\u00ebdha, por nj\u00eb mungese p\u00ebrvoje reale. A duhej t\u00eb nxitojm\u00eb dhe t\u00eb p\u00ebrfundojm\u00eb me \u00e7do m\u00ebnyr\u00eb? V\u00ebshtir\u00eb \u2014 kolektivi duhet t\u00eb evoluoj\u00eb n\u00eb nivelin e nevojsh\u00ebm, p\u00ebrpara se t\u00eb mund t\u00eb p\u00ebrdor\u00eb mjetet p\u00ebrkat\u00ebse. Prandaj, duke p\u00ebrdorur imazhe t\u00eb gatshme Docker, shpesh u ndesh\u00ebm me probleme n\u00eb rrjet (di\u00e7ka q\u00eb ndoshta kishte t\u00eb b\u00ebnte edhe me papjekurin\u00eb e Docker-it vet\u00eb) ose ishte e v\u00ebshtir\u00eb t\u00eb zgjeroje konteiner\u00ebt e tjer\u00eb.<\/p>\n<p>Me cilat shqet\u00ebsime u ndesh\u00ebm?<\/p>\n<ul>\n<li> Probleme n\u00eb rrjetin n\u00eb modalitetin bridge<\/li>\n<li> Nuk \u00ebsht\u00eb e leht\u00eb t\u00eb shikosh log-et n\u00eb konteiner (n\u00ebse ato nuk jan\u00eb nxjerr\u00eb diku ve\u00e7mas n\u00eb sistemin e skedar\u00ebve t\u00eb makin\u00ebs host)<\/li>\n<li> Her\u00eb pas here, ngadal\u00ebsim i \u00e7uditsh\u00ebm ElasticSearch brenda konteinerit, arsyet nuk u zbuluan, konteineri \u00ebsht\u00eb zyrtar<\/li>\n<li> E v\u00ebshtir\u00eb t\u00eb p\u00ebrdor\u00ebsh shell-in brenda konteinerit \u2014 gjith\u00e7ka \u00ebsht\u00eb shum\u00eb e kufizuar, nuk ka mjetet e njohura<\/li>\n<li> Masa t\u00eb m\u00ebdha t\u00eb konteiner\u00ebve t\u00eb nd\u00ebrtuar \u2014 kushton shtrenjt\u00eb p\u00ebr t'i ruajtur<\/li>\n<li> P\u00ebr shkak t\u00eb madh\u00ebsis\u00eb s\u00eb madhe t\u00eb kontejner\u00ebve, \u00ebsht\u00eb e v\u00ebshtir\u00eb t\u00eb mbahet m\u00eb shum\u00eb se nj\u00eb version.<\/li>\n<li> Nd\u00ebrtime m\u00eb t\u00eb gjata, ndryshe nga metodat e tjera (skriptet ose paketat deb).<\/li>\n<\/ul>\n<p>\nNga ana tjet\u00ebr, a \u00ebsht\u00eb v\u00ebrtet m\u00eb keq t\u00eb deploy-osh nj\u00eb sh\u00ebrbim Spring si nj\u00eb arkiv jar p\u00ebrmes t\u00eb nj\u00ebjt\u00ebs deb? A \u00ebsht\u00eb e nevojshme izolimi i burimeve? A vlen t\u00eb humbasim mjetet komode t\u00eb sistemit operativ duke vendosur sh\u00ebrbimin n\u00eb nj\u00eb kontejner t\u00eb shum\u00eb kufizuar?<\/p>\n<p>Si\u00e7 e tregoi praktika \u2014 n\u00eb realitet, kjo nuk \u00ebsht\u00eb e nevojshme, paketa deb mjafton n\u00eb 90% t\u00eb rasteve.<\/p>\n<p>Kur n\u00eb fakt paketa e vjet\u00ebr deb nuk funksionon dhe kur v\u00ebrtet na nevojitet Docker?<\/p>\n<p>P\u00ebr ne, kjo ishte implementimi i sh\u00ebrbimeve n\u00eb python. Nj\u00eb s\u00ebr\u00eb bibliotekash t\u00eb nevojshme p\u00ebr m\u00ebsimin e makineris\u00eb, q\u00eb mungonin n\u00eb paketimin standard t\u00eb sistemit operativ (dhe ato q\u00eb ishin, nuk ishin versione t\u00eb duhura), hile me konfigurimet, nevoja p\u00ebr versione t\u00eb ndryshme p\u00ebr sh\u00ebrbime t\u00eb ndryshme q\u00eb p\u00ebrjetonin n\u00eb t\u00eb nj\u00ebjt\u00ebn sistem prit\u00ebs, \u00e7uan n\u00eb p\u00ebrfundimin se m\u00ebnyra e vetme logjike p\u00ebr t\u00eb shp\u00ebrndar\u00eb k\u00ebt\u00eb p\u00ebrzierje thelb\u00ebsore ishte docker. Pun\u00ebn p\u00ebr nd\u00ebrtimin e kontejnerit docker doli t\u00eb ishte m\u00eb e leht\u00eb se ideja p\u00ebr t\u00eb paketuar t\u00eb gjith\u00eb k\u00ebt\u00eb n\u00eb paketa deb t\u00eb ndara me var\u00ebsi, p\u00ebr m\u00eb tep\u00ebr, askush n\u00eb mendje t\u00eb sh\u00ebndosh\u00eb nuk do ta merrte p\u00ebrsip\u00ebr k\u00ebt\u00eb.<\/p>\n<p>Momenti i dyt\u00eb, ku planifikohet t\u00eb p\u00ebrdoret docker \u2014 p\u00ebr shp\u00ebrndarjen e sh\u00ebrbimeve sipas skem\u00ebs blue-green deploy. Por k\u00ebtu do t\u00eb d\u00ebshironim t\u00eb merrnim nj\u00eb rritje graduale t\u00eb kompleksitetit: fillimisht mblidhen paketat deb, dhe pastaj, nga ato, nd\u00ebrtohet kontejneri docker.<\/p>\n<p><br clear=\"all\"><\/p>\n<h4>Paketat Snap<\/h4>\n<p>\n<img decoding=\"async\" alt=\"Evolucioni i mjeteve t\u00eb shp\u00ebrndarjes, ose refleksione mbi Docker, deb, jar dhe t\u00eb tjera\" src=\"\/wp-content\/uploads\/2019\/03\/8c9001b28757f8427c85e54bca5b4e73.jpg\" style=\"display:block;margin: 0 auto;\" \/> Le t\u00eb kthehemi te paketat snap. Ato u shfaq\u00ebn zyrtarisht p\u00ebr her\u00eb t\u00eb par\u00eb n\u00eb Ubuntu 16.04. Ndryshe nga paketat deb dhe rpm, snap p\u00ebrmbajn\u00eb t\u00eb gjitha var\u00ebsit\u00eb e nevojshme. Nga nj\u00ebra an\u00eb, kjo ndihmon p\u00ebr t\u00eb shmangur konflikte bibliotekash, nd\u00ebrsa nga ana tjet\u00ebr, p\u00ebrkthimi rezultues ka dimensione m\u00eb t\u00eb m\u00ebdha. P\u00ebr m\u00eb tep\u00ebr, kjo mund t\u00eb ndikoj\u00eb n\u00eb sigurin\u00eb e sistemit: n\u00eb rastin e shp\u00ebrndarjes s\u00eb snap, zhvilluesi q\u00eb krijon paket\u00ebn duhet t\u00eb mbaj\u00eb n\u00ebn v\u00ebzhgim t\u00eb gjitha ndryshimet e bibliotekave t\u00eb p\u00ebrfshira. N\u00eb p\u00ebrgjith\u00ebsi, situata nuk \u00ebsht\u00eb kaq e thjesht\u00eb dhe g\u00ebzimi i p\u00ebrgjithsh\u00ebm nga p\u00ebrdorimi i tyre nuk ndodh. Megjithat\u00eb, kjo \u00ebsht\u00eb nj\u00eb alternativ\u00eb mjaft e arsyeshme n\u00ebse Docker p\u00ebrdoret vet\u00ebm si nj\u00eb mjet paketimi dhe jo virtualizimi.<\/p>\n<p><br clear=\"all\"><br \/>\nSi p\u00ebrfundim, tani kemi nj\u00eb kombinim t\u00eb arsyesh\u00ebm q\u00eb p\u00ebrdor si paketat deb ashtu edhe en\u00ebt Docker, t\u00eb cilat, ndoshta, n\u00eb raste t\u00eb caktuara do t'i z\u00ebvend\u00ebsojm\u00eb me paketat snap.<\/p>\n<p class=\"for_users_only_msg\">Vet\u00ebm p\u00ebrdoruesit e regjistruar mund t\u00eb marrin pjes\u00eb n\u00eb anket\u00eb. <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/auth\/login\/\">Hyni<\/a><\/noindex>, ju lutemi.<\/p>\n<h2 class=\"default-block__polling-title\">\u00c7far\u00eb p\u00ebrdorni p\u00ebr shp\u00ebrndarje?<\/h2>\n<ul class=\"content-list content-list_polling\">\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Skemat e shkruara vet\u00eb<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Kopjojm\u00eb manualisht n\u00eb FTP<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    paketat deb<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    paketat rpm<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    paketat snap<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    imazhe Docker<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    imazhe t\u00eb makinave virtuale<\/p>\n<\/li>\n<li class=\"content-list__item content-list__item_polling\">\n<p>                    Klonojm\u00eb t\u00eb gjith\u00eb HDD-n\u00eb<\/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>                    T\u00eb tjera<\/p>\n<\/li>\n<\/ul>\n<p>    109 p\u00ebrdorues votuan. 32 p\u00ebrdorues abstenuan.<\/p>\n<p>Burimi: <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 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\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,\" \/>\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\/sq\/blog\/administrirovanie\/evolyutsiya-sredstv-postavki-ili-razmyshleniya-o-docker-deb-jar-i-prochem\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\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 \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,\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/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\udd47Evolucioni i mjeteve t\u00eb shp\u00ebrndarjes, ose reflektime mbi Docker, deb, jar dhe t\u00eb tjer\u00eb | ProHoster","description":"Nj\u00eb moment, vendosa t\u00eb shkruaj nj\u00eb artikull rreth shp\u00ebrndarjes n\u00eb form\u00ebn e kontejner\u00ebve Docker dhe paketave deb, por kur fillova, ndjeva nj\u00eb t\u00ebrheqje n\u00eb koh\u00ebt e para t\u00eb kompjuter\u00ebve personal\u00eb dhe madje edhe t\u00eb kalkulator\u00ebve. Pra, n\u00eb vend t\u00eb krahasimeve t\u00eb thata midis Docker dhe deb, rezultuan k\u00ebto reflektime mbi evoluimin, t\u00eb cilat po i paraqes p\u00ebr ju. \u00c7do produkt,","canonical_url":"https:\/\/prohoster.info\/sq\/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":"sq_AL","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 \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,","og:url":"https:\/\/prohoster.info\/sq\/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"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/42175","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=42175"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/42175\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=42175"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=42175"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=42175"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}