.NET Core paLinux, DevOps pabhiza

Isu takagadzira DevOps nepese patinogona napo. Taive tiri vasere, uye Vasya ndiye ainyanya kutonhorera muWindows. Pakarepo Vasya akabva aenda, uye ndaive nebasa rekutanga chirongwa chitsva chakapihwa neWindows kuvandudza. Pandakarasa iyo yese Windows budiriro stack patafura, ndakaona kuti mamiriro acho airwadza ...

Aya ndiwo matangiro akaita nyaya Alexandra Sinchinova pamusoro DevOpsConf. Apo nyanzvi inotungamira yeWindows yakasiya kambani, Alexander akashaya kuti oita sei zvino. Chinja kuLinux, hongu! Alexander achakuudza kuti akakwanisa sei kugadzira muenzaniso uye kuendesa chikamu cheWindows kuvandudza kuLinux achishandisa muenzaniso wepurojekiti yakapedzwa yevashandisi ve100 yekupedzisira.

.NET Core paLinux, DevOps pabhiza

Nzira yekuendesa sei chirongwa kuRPM zviri nyore uye zvisina simba uchishandisa TFS, Puppet, Linux .NET core? Maitiro ekutsigira shanduro yedhatabhesi reprojekiti kana timu yekuvandudza ikanzwa mazwi Postgres uye Flyway kekutanga, uye nguva yekupedzisira izuva rinotevera mangwana? Nzira yekubatanidza neDocker? Nzira yekukurudzira vagadziri veNET kuti vasiye Windows uye smoothies vachifarira Puppet neLinux? Nzira yekugadzirisa sei kusawirirana kwemafungiro kana pasina simba, kana chido, kana zviwanikwa zvekuchengetedza Windows mukugadzira? Pamusoro peizvi, pamwe chete neWebhu Deploy, kuedza, CI, pamusoro pemaitiro ekushandisa TFS mumapurojekiti aripo, uye, zvechokwadi, pamusoro pemadondoro akaputsika uye mhinduro dzekushanda, mune chinyorwa chemushumo waAlexander.


Saka, Vasya akasiya, basa riri pandiri, vagadziri vakamirira vasingashiviriri nemapitchforks. Pandakazoona kuti Vasya aisagona kudzorerwa, ndakabva ndatanga bhizimisi. Kutanga, ndakaongorora chikamu cheWin VM mungarava dzedu. Chibodzwa chaive chisiri chekufarira Windows.

.NET Core paLinux, DevOps pabhiza

Sezvo isu tiri kushingairira kugadzira maDevOps, ndakaona kuti chimwe chinhu chinoda kuchinjwa munzira yekuunza application nyowani. Paive nemhinduro imwe chete - kana zvichibvira, endesa zvese kuLinux. Google yakandibatsira - panguva iyoyo .Net yakanga yatoiswa kuLinux, uye ndakaona kuti iyi ndiyo yaive mhinduro!

Sei .NET musimboti wakabatana neLinux?

Paiva nezvikonzero zvakawanda zveizvi. Pakati pe "kubhadhara mari" uye "kusabhadhara", vazhinji vachasarudza yechipiri - seni. Rezinesi reMSDB rinodhura madhora chiuru; kuchengetedza boka reWindows virtual muchina kunodhura mazana emadhora. Kukambani huru iyi imari huru. Ndosaka kuchengetedza - chikonzero chekutanga. Kwete iyo inonyanya kukosha, asi imwe yeakakosha.

Windows virtual machines inotora zviwanikwa zvakawanda kupfuura hama dzavo dzeLinux - zvinorema. Tichifunga nezvehukuru hwekambani huru, takasarudza Linux.

Iyo sisitimu inongobatanidzwa mune iripo CI. Isu tinozviona isu pachedu DevOps inofambira mberi, isu tinoshandisa Bamboo, Jenkins uye GitLab CI, saka mazhinji ebasa redu anomhanya paLinux.

Chikonzero chekupedzisira ndechekuti kuperekedza kuri nyore. Taifanira kudzikisa chipingamupinyi chekupinda che "vaperekedzi" -vakomana vanonzwisisa chikamu chehunyanzvi, kuve nechokwadi chebasa risina kukanganiswa, uye kuchengetedza masevhisi kubva pamutsetse wechipiri. Vanga vatojairana neLinux stack, saka zviri nyore kwavari kuti vanzwisise, vatsigire uye vachengetedze chigadzirwa chitsva pane kushandisa zvimwe zviwanikwa kuti vanzwisise kushanda kwakafanana kwesoftware yeWindows platform.

zvinodiwa

Chekutanga - kurerukira kwemhinduro nyowani yevagadziri. Havasi vese vaive vakagadzirira shanduko, kunyanya mushure mekunge izwi reLinux rataurwa. Vagadziri vanoda yavo yavanoda Visual Studio, TFS ine autotests yemagungano uye smoothies. Kuti kuendesa kune kugadzirwa kunoitika sei hazvina kukosha kwavari. Naizvozvo, isu takasarudza kusachinja maitiro akajairwa uye kusiya zvese zvisina kuchinjika pakuvandudza Windows.

Chirongwa chitsva chinodiwa batanidza muCI iripo. Njanji dzaive dzatovepo uye basa rese raifanira kuitwa tichifunga nezvematanho eiyo configuration manejimendi system, yakagamuchirwa yekuendesa zviyero uye monitoring masisitimu.

Kureruka kwekutsigirwa uye kushanda, sechimiro chehudiki hwekupinda chikumbaridzo kune vese vatsva vatori vechikamu kubva kumapoka akasiyana uye dhipatimendi rekutsigira.

Deadline - nezuro.

Win Development Group

Chikwata cheWindows chaishanda nei panguva iyoyo?

.NET Core paLinux, DevOps pabhiza

Iye zvino ndinogona kutaura izvozvo nechivimbo IdentityServer4 inzira inotonhorera yemahara kune ADFS ine hunyanzvi hwakafanana, kana chii Entity Framework Core - paradhiso yemugadziri, kwausingafaniri kunetseka kunyora zvinyorwa zveSQL, asi tsanangura mibvunzo mudhatabhesi mumashoko eOOP. Asi zvino, panguva yekukurukurirana kwechirongwa chekuita, ndakatarisa iyi stack sekunge yaive yeSumerian cuneiform, ndichingoziva PostgreSQL neGit chete.

Panguva iyoyo takanga tichishandisa Puppet segadziriro yekugadzirisa hurongwa. Muzvizhinji zvezvirongwa zvedu zvataishandisa GitLab CI, kwakavharwa nenyama, yakaenzana yakakwirira-mutoro masevhisi uchishandisa HAProxy akatarisa zvese ne Zabbix, marunda grafana ΠΈ Prometheus, Muvhimi, uye zvose izvi zvairuka pazvidimbu zvesimbi HPESXi pamusoro VMWare. Munhu wose anozviziva - classic yemhando.

.NET Core paLinux, DevOps pabhiza

Ngatitarisei uye tiedze kunzwisisa zvakaitika tisati tatanga kupindira kwese uku.

Chii chakaitika

TFS isimba rine simba rinongoburitsa kodhi kubva kumugadziri kuenda kumuchina wekupedzisira wekugadzira, asi zvakare ine seti yekubatanidza inoshanduka-shanduka nemasevhisi akasiyana-siyana - kupa CI padanho repamuchinjikwa.

.NET Core paLinux, DevOps pabhiza
Kare, aya aive mahwindo akasimba. TFS yakashandisa akati wandei maBuild agents, ayo akashandiswa kuunganidza mapurojekiti mazhinji. Mumwe nemumwe mumiriri ane vashandi 3-4 kuti vaenzanise mabasa uye nekukwenenzvera maitiro. Zvino, maererano nehurongwa hwekuburitsa, TFS yakaunza iyo ichangobva kubikwa Kuvaka kuWindows application server.

Taida kuwana chii?

Isu tinoshandisa TFS kuburitsa nekusimudzira, uye tomhanyisa application pane Linux Application server, uye pane imwe mhando yemashiripiti pakati pavo. Izvi Magic Box uye pane munyu webasa riri mberi. Ndisati ndazviparadzanisa, ndichatora nhanho parutivi ndotaura mazwi mashoma nezvekushandisa.

Iyo purojekiti

Iyo application inopa kushanda kwekubata prepaid makadhi.

.NET Core paLinux, DevOps pabhiza

munhu anoda kubetserwa

Paive nemhando mbiri dzevashandisi. Yokutanga yakawana mukana nekupinda mukati uchishandisa SSL SHA-2 chitupa. U yechipiri pakanga paine mukana uchishandisa login uye password.

HAProxy

Ipapo chikumbiro chemutengi chakaenda kuHAProxy, iyo yakagadzirisa matambudziko anotevera:

  • mvumo yekutanga;
  • SSL kuguma;
  • kugadzirisa zvikumbiro zveHTTP;
  • nhepfenyuro zvikumbiro.

Chitupa chemutengi chakasimbiswa pamwe chete necheni. Isu - simba uye isu tinokwanisa kutenga izvi, sezvo isu pachedu tichipa zvitupa kune vatengi vebasa.

Teerera pfungwa yechitatu, tichazodzoka kwairi gare gare.

Dzorera

Vakaronga kuita backend paLinux. Iyo backend inodyidzana nedhatabhesi, inotakura inodiwa runyorwa rweropafadzo uyezve, zvichienderana neropafadzo dzipi mushandisi ane mvumo, inopa mukana wekusaina magwaro emari uye nekuatumira kuti aurayiwe, kana kuburitsa imwe mhando yemushumo.

Kuchengeta neHAProxy

Pamusoro pemamiriro ezvinhu maviri ayo mutengi wega wega aifamba, pakanga paine zvakare chitupa chekuzivikanwa. IdentityServer4 inongobvumidza iwe kupinda mukati, iyi yemahara uye ine simba analogue ye ADFS - Anoshanda Directory Directory Services.

Chikumbiro chekuzivikanwa chakagadziriswa mumatanho akati wandei. Danho rekutanga - mutengi akapinda kumashure, iyo yakataurirana neserver iyi uye yakaongorora kuvepo kwechiratidzo chemutengi. Kana ikashaikwa, chikumbiro chakadzoserwa kumamiriro acho kwachakabva, asi neredirect, uye neredirect yacho chakaenda kuzviziviso.

Danho rechipiri - chikumbiro chakagamuchirwa kune peji remvumo muIdentityServer, uko mutengi akanyoresa, uye chiratidzo chakamirirwa kwenguva refu chakaonekwa muIdentityServer dhatabhesi.

Nhanho yechitatu - mutengi akadzoserwa kumashure kune mamiriro azvakabva.

.NET Core paLinux, DevOps pabhiza

IdentityServer4 ine chimiro: inodzosera mhinduro kuchikumbiro chekudzoka kuburikidza neHTTP. Hazvina mhosva kuti takanetseka sei nekumisikidza sevha, zvisinei kuti takazvivhenekera sei nemagwaro, nguva yega yega yatakagamuchira chikumbiro chekutanga chemutengi ne URL yakauya kuburikidza neHTTPS, uye IdentityServer yakadzosa mamiriro akafanana, asi neHTTP. Takarohwa nehana! Uye isu takatamisa zvese izvi kuburikidza nekuzivikanwa mamiriro kune HAProxy, uye mumisoro taifanira kugadzirisa iyo HTTP protocol kuHTTPS.

Chii chiri kuvandudzwa uye wakachengeta kupi?

Isu takachengeta mari nekushandisa mhinduro yemahara yekubvumidza boka revashandisi, zviwanikwa, sezvo isu tisina kuisa IdentityServer4 senge node yakaparadzana muchikamu chakasiyana, asi takaishandisa pamwe chete nebackend pane imwechete server uko kuseri kwechishandiso kunomhanya. .

Inofanira kushanda sei

Saka, sekuvimbisa kwandakaita - Magic Box. Isu tatonzwisisa kuti isu takavimbiswa kuenda kuLinux. Ngatirongei mabasa chaiwo aida mhinduro.

.NET Core paLinux, DevOps pabhiza

Chipopi chinoratidza. Kuendesa uye kutonga sevhisi uye magadzirirwo ekushandisa, mabikirwo anotonhorera aifanira kunyorwa. Mupumburu wepenzura zvinonyatsoratidza kuti zvakaitwa nekukurumidza uye nemazvo.

Delivery nzira. Iyo chiyero ndeye RPM. Wese munhu anonzwisisa kuti muLinux haugone kuita pasina iyo, asi iyo purojekiti pachayo, mushure megungano, yaive seti yemafaira eDLL anogoneka. Vaiva vanenge 150 vavo, basa racho rakanga rakaoma zvikuru. Iyo chete inowirirana mhinduro ndeyekurongedza iyi bhinari muRPM uye kuendesa iyo application kubva mairi.

Versioning. Taifanira kuburitsa kazhinji, uye taifanira kusarudza kuti togadzira sei zita repasuru. Uyu mubvunzo wezinga rekubatanidza neTFS. Isu takanga tine mumiriri wekuvaka paLinux. Kana TFS inotumira basa kune anobata - mushandi - kune Vakavaka mumiriri, zvakare inopfuudza iyo boka remhando dzakasiyana-siyana dzinoguma munzvimbo yemubati maitiro. Aya magariro akasiyana ane zita reBuild, zita reshanduro, uye zvimwe zvinosiyana. Verenga zvakawanda nezve izvi muchikamu che "Kuvaka RPM package".

Kugadzirisa TFS akauya kuzoisa Pipeline. Pakutanga, takaunganidza mapurojekiti ese eWindows paWindows agents, asi ikozvino mumiriri weLinux aonekwa - mumiriri weBuild, anoda kuverengerwa muboka rekuvaka, akafumiswa nezvimwe zvigadzirwa, uye akaudzwa kuti ndeapi mapurojekiti achavakwa pane iyi Build agent. , uye neimwe nzira shandura iyo Pipeline.

IdentityServer. ADFS haisi nzira yedu, tiri kuenda kuOpen Source.

Ngatiende kuburikidza nezvikamu.

Magic Box

Inosanganisira zvikamu zvina.

.NET Core paLinux, DevOps pabhiza

Linux Kuvaka mumiririri. Linux, nekuti isu tinozvivakira - zvine musoro. Chikamu ichi chakaitwa mumatanho matatu.

  • Gadzirisa vashandi uye kwete chete, sezvo basa rokuparadzira raitarisirwa raitarisirwa.
  • Isa .NET Core 1.x. Sei 1.x kana 2.0 yatovepo mune yakajairwa repository? Nekuti patakatanga kusimudzira, iyo yakagadzikana vhezheni yaive 1.09, uye yakasarudzwa kuita purojekiti kubva pairi.
  • Git 2.x.

RPM-repository. RPM mapakeji anodiwa kuchengetwa kumwe kunhu. Zvaifungidzirwa kuti isu taizoshandisa iyo yakafanana corporate RPM repository inowanikwa kune ese maLinux mauto. Ndizvo zvavakaita. Iyo repository server inogadziriswa web hook iyo yakadhawunirodha inodiwa RPM package kubva panzvimbo yakatarwa. Iyo pasuru vhezheni yakashumwa kune webhook neBuild agent.

GitLab. Attention! GitLab pano haishandiswe kwete nevagadziri, asi nedhipatimendi rekushanda kudzora shanduro dzemashandisirwo, vhezheni dzepakeji, kutarisa chimiro chemichina yese yeLinux, uye inochengeta resipi - zvese zvePuppet zvinoratidzira.

Puppet - inogadzirisa zvese zvinopokana uye inopa chaizvo zvigadziriso zvatinoda kubva kuGitlab.

Tinotanga kunyura. Kuendesa kweDLL kuRPM kunoshanda sei?

Kuendesa DDL kuRPM

Ngatitii tine .NET development rockstar. Inoshandisa Visual Studio uye inogadzira bazi rekuburitsa. Mushure meizvozvo, inoiisa kuGit, uye Git pano inhengo yeTFS, ndiko kuti, ndiyo repository yekushandisa iyo mugadziri anoshanda nayo.

.NET Core paLinux, DevOps pabhiza

Mushure meizvozvo TFS inoona kuti chibvumirano chitsva chasvika. App ipi? Muzvirongwa zveTFS pane label inoratidza kuti ndezvipi zviwanikwa zvine imwe Build agent. Muchiitiko ichi, anoona kuti tiri kuvaka .NET Core project uye anosarudza Linux Build agent kubva padziva.

Iyo Build agent inogamuchira masosi uye inodhawunirodha inodiwa dependencies kubva ku.NET repository, npm, nezvimwe. uye mushure mekuvaka iyo application pachayo uye inotevera kurongedza, inotumira iyo RPM package kune RPM repository.

Kune rumwe rutivi, zvinotevera zvinoitika. Injiniya yedhipatimendi rekushanda inobatanidzwa zvakananga mukuburitswa kweprojekiti: anoshandura mavhezheni emapakeji mukati Hiera mune repository uko resipi yekushandisa inochengetwa, mushure meiyo Puppet inokonzeresa Yum, inotora pasuru nyowani kubva kunzvimbo inochengeterwa, uye shanduro itsva yechishandiso yagadzirira kushandiswa.

.NET Core paLinux, DevOps pabhiza

Zvese zviri nyore mumashoko, asi chii chinoitika mukati meBuild agent pachayo?

Packaging DLL RPM

Yakagamuchira masosi eprojekiti uye kuvaka basa kubva kuTFS. Build agent inotanga kuvaka purojekiti pachayo kubva kune zvinyorwa. Iyo yakaunganidzwa purojekiti inowanikwa seti DLL mafaira, ayo akaiswa mu zip archive kuderedza mutoro pafaira system.

Iyo ZIP archive yakaraswa kune RPM package kuvaka dhairekitori. Tevere, iyo Bash script inotanga kuchinjika kwezvakatipoteredza, inowana iyo Vaka vhezheni, iyo purojekiti vhezheni, nzira yekuvaka dhairekitori, uye inomhanya RPM-kuvaka. Kana iyo kuvaka kwapera, iyo package inoburitswa kune local repository, iyo iri paBuild agent.

Tevere, kubva kuVaka mumiriri kune sevha iri muRPM repository JSON chikumbiro chatumirwa zvichiratidza zita reshanduro uye kuvaka. Webhook, yandakataura nezvayo pakutanga, inodhawunirodha iyi chaiyo pasuru kubva kune yemuno repository paVaka mumiriri uye inoita kuti gungano idzva riwanikwe pakuiswa.

.NET Core paLinux, DevOps pabhiza

Nei iyi chaiyo chirongwa chekuendesa pasuru kune RPM repository? Nei ndisingakwanise kukurumidza kutumira iyo yakaunganidzwa pasuru kunzvimbo inochengeterwa? Ichokwadi ndechokuti iyi ndiyo mamiriro ekuchengetedza kuchengeteka. Mamiriro ezvinhu aya anodzikamisa mukana wekuti vanhu vasina mvumo vanoisa RPM mapakeji kune sevha inowanikwa kune ese maLinux michina.

Database versioning

Pakubvunzana nechikwata chebudiriro, zvakazoitika kuti vakomana vaive padyo neMS SQL, asi mumapurojekiti mazhinji asiri eWindows takanga tava kushandisa PostgreSQL nesimba ravo rose. Sezvo isu takanga tatofunga kusiya zvese zvakabhadharwa, takatanga kushandisa PostgreSQL pano futi.

.NET Core paLinux, DevOps pabhiza

Muchikamu chino ndinoda kukuudza kuti takashandura sei dhatabhesi uye kuti takasarudza sei pakati peFlyway neEntity Framework Core. Ngatitarisei zvakanakira nezvazvakaipira.

ΠœΠΈΠ½ΡƒΡΡ‹

Flyway inongoenda nenzira imwe chete, isu hatikwanise kudzokera shure - ichi chinhu chakakosha chinokanganisa. Unogona kuienzanisa neEntity Framework Core nedzimwe nzira - maererano nekureruka kwemugadziri. Iwe unorangarira kuti isu takaisa izvi pamberi, uye chikuru chiyero chaive chekusachinja chero chinhu chekuvandudza Windows.

ZveFlyway isu imwe mhando yekuputira yaidiwakuti vakomana vasanyora SQL mibvunzo. Ivo vari pedyo zvakanyanya nekushanda muOOP mazwi. Isu takanyora mirairo yekushanda nezvinhu zve database, takagadzira mubvunzo weSQL uye tikauita. Iyo itsva vhezheni yedatabase yakagadzirira, yakaedzwa - zvese zvakanaka, zvese zvinoshanda.

Entity Framework Core ine minus - pasi pemitoro inorema iyo inovaka suboptimal SQL mibvunzo, uye kudhirowa mudhatabhesi kunogona kuve kwakakosha. Asi sezvo isu tisina basa remutoro wepamusoro, isu hativerenge mutoro mumazana eRPS, takagamuchira njodzi idzi uye takagovera dambudziko kune ramangwana redu.

ΠŸΠ»ΡŽΡΡ‹

Entity Framework Core inoshanda kunze kwebhokisi uye iri nyore kugadzira, uye Flyway Inobatanidza zviri nyore muCI iripo. Asi isu tinoita kuti zvive nyore kune vanogadzira :)

Roll-up process

Puppet anoona kuti shanduko yepakeji vhezheni iri kuuya, kusanganisira iyo ine basa rekutama. Kutanga, inoisa pasuru ine zvinyorwa zvekutama uye mashandiro ane chekuita nedatabase. Mushure meizvi, iyo application inoshanda nedatabase inotangwazve. Kunotevera kunouya kuiswa kwezvikamu zvasara. Iyo yekurongeka iyo mapakeji akaiswa uye maapplication anotangwa anotsanangurwa muPuppet manifest.

Zvishandiso zvinoshandisa data rakadzikama, senge tokens, mapassword epa database, zvese izvi zvinodhonzwa mugadziriso kubva kuPuppet master, kwavanochengetwa mune encrypted fomu.

TFS matambudziko

Pashure pokunge tasarudza ndokuona kuti zvinhu zvose zvakanga zviri kutiitira zvechokwadi, ndakasarudza kutarisa zvaiitika nemagungano eTFS zvakazara nokuda kwedhipatimendi reWin development pane mamwe mapurojekiti - tingave taivaka/kusunungura nokukurumidza kana kuti kwete, uye akawana matambudziko makuru nekumhanya .

Imwe yemapurojekiti makuru inotora 12-15 maminetsi kuungana - iyo inguva yakareba, haugone kurarama zvakadaro. Ongororo yekukurumidza yakaratidza kudhirowa kunotyisa muI/O, uye izvi zvaive pamitsetse.

Mushure mekuiongorora chikamu nechikamu, ndakaona matatu foci. Chekutanga - "Kaspersky antivirus", iyo inotsvaga masosi pane ese maWindows Build agents. Chepiri - Windows Indexer. Yakanga isina kuremara, uye zvese zvakange zvanyorwa munguva chaiyo paVavaki vamiririri panguva yekuendesa.

Chetatu - Npm install. Zvakazoitika kuti mumaPipelines mazhinji takashandisa iyi chaiyo mamiriro. Nei akaipa? Iyo Npm yekuisa maitiro inoitiswa kana muti wekutsamira wakaumbwa mukati package-lock.json, uko shanduro dzepakeji dzichashandiswa kuvaka purojekiti dzakarekodhwa. Izvo zvakaderera ndezvekuti Npm install inokwevera kumusoro ichangoburwa vhezheni yemapakeji kubva paInternet nguva dzese, uye izvi zvinotora nguva yakawanda munyaya yeprojekti hombe.

Vagadziri dzimwe nguva vanoedza pamuchina wemuno kuyedza kuti chimwe chikamu kana chirongwa chose chinoshanda sei. Dzimwe nguva zvakazoitika kuti zvinhu zvose zvakanga zvakanaka munharaunda, asi vakazviunganidza, vakazvibudisa, uye hapana chakashanda. Isu tinotanga kufunga kuti dambudziko nderei - hongu, akasiyana vhezheni emapakeji ane zvinoenderana.

chisarudzo

  • Zvinyorwa muAV kunze.
  • Dzima indexing.
  • Kuchinja kusvika npm ci.

Zvakanakira npm ci ndezvekuti isu Tinounganidza muti wekutsamira kamwe chete, uye isu tinowana mukana wekupa mugadziri rondedzero yazvino yemapakeji, yaanogona kuedza nayo munharaunda yake sezvaanoda. Izvi inochengetedza nguva vagadziri vanonyora kodhi.

Kugadziriswa

Iye zvino zvishoma nezve repository kumisikidza. Nhoroondo isu tinoshandisa Nexus yekutarisira repositories, kusanganisira Yemukati REPO. Iyi yemukati repository ine zvese zvikamu zvatinoshandisa kune zvemukati zvinangwa, semuenzaniso, kuzvinyora-kutarisa.

.NET Core paLinux, DevOps pabhiza

Isu tinoshandisawo NuGet, sezvo iine cache iri nani kana ichienzaniswa nemamwe maneja epakeji.

mugumisiro

Mushure mekunge takwenenzvera maBuild Agents, avhareji yenguva yekuvaka yakaderedzwa kubva pamaminitsi gumi nemaviri kusvika pa12.

Kana tikaverenga michina yese yatingadai takashandisa kuWindows, asi tikachinjira kuLinux muchirongwa ichi, takachengeta mari inosvika madhora gumi 10. Uye izvi zviri pamarezinesi chete, nezvimwe kana tikafunga zviri mukati.

Zvirongwa

Kwechikamu chinotevera, takaronga kushanda pakugadzirisa kuburitsa kodhi.

Kuchinjira kune prebuild Docker mufananidzo. TFS chinhu chinotonhorera chine akawanda plugins anokutendera kuti ubatanidze muPipeline, kusanganisira trigger-yakavakirwa musangano we, toti, mufananidzo weDocker. Tinoda kugadzira iyi trigger kune imwecheteyo package-lock.json. Kana kuumbwa kwezvikamu zvakashandiswa kuvaka purojekiti neimwe nzira kuchichinja, tinovaka mufananidzo mutsva weDocker. Iyo inozoshandiswa kuendesa mudziyo neyakaunganidzwa application. Izvi hazvisi izvo izvozvi, asi isu tiri kuronga kuchinjisa kune microservice architecture muKubernetes, iyo iri kushingaira kusimudzira mukambani yedu uye yanga ichipa mhinduro dzekugadzira kwenguva yakareba.

Summary

Ndinokurudzira munhu wese kuti arase Windows, asi hazvisi nekuti ini handizive mabikirwo acho. Chikonzero ndechekuti akawanda Opensource mhinduro Linux stack. uri kunzwa mushe here chengetedza pazvinhu. Sekuona kwangu, ramangwana ndere Open Source mhinduro paLinux ine nharaunda ine simba.

Mukurukuri nhoroondo yaAlexander Sinchinov paGitHub.

DevOps Conf imusangano wekubatanidzwa kwekusimudzira, kuyedzwa uye maitiro ekushanda kwenyanzvi nenyanzvi. Ndicho chikonzero basa rakataurwa naAlexander? yakaitwa uye ichishanda, uye pazuva rekuita kwakaburitswa maviri akabudirira. On DevOps Conf paRIT++ Musi waChivabvu 27 na28 kuchave nezviitiko zvakatowanda zvakafanana kubva kuvarapi. Iwe unogona achiri kusvetukira mungoro yekupedzisira uye isa mushumo kana kutora nguva yako kubhuka tikiti. Sangana nesu muSkolkovo!

Source: www.habr.com

Voeg