.NET Core ar Linux, DevOps ar muin capaill

D’fhorbraíomar DevOps mar is fearr a d’fhéadfaimis. Bhí 8 againn, agus bhí Vasya an coolest i Windows. Go tobann d'fhág Vasya, agus bhí sé de chúram orm tionscadal nua a sheoladh a chuir forbairt Windows ar fáil. Nuair a dhumpáil mé an chairn forbartha Windows ar fad ar an mbord, thuig mé go raibh an cás ina phian ...

Seo mar a thosaíonn an scéal Alexandra Sinchinova ar DevOpsConf. Nuair a d'fhág an príomh-speisialtóir Windows an chuideachta, d'fhéach Alexander cad ba cheart a dhéanamh anois. Téigh go Linux, ar ndóigh! Inseoidh Alexander duit conas a d’éirigh leis fasach a chruthú agus cuid d’fhorbairt Windows a aistriú go Linux ag baint úsáide as an sampla de thionscadal críochnaithe do 100 úsáideoir deiridh.

.NET Core ar Linux, DevOps ar muin capaill

Conas tionscadal a sheachadadh go héasca agus gan stró chuig RPM ag baint úsáide as croíláir TFS, Puipéad, Linux .NET? Conas tacú le leagan bunachar sonraí tionscadail má chloiseann an fhoireann forbartha na focail Postgres agus Flyway den chéad uair, agus is é an spriocdháta an lá i ndiaidh lae amárach? Conas a chomhtháthú le Docker? Conas forbróirí .NET a spreagadh chun Windows agus caoineoga a thréigean i bhfabhar Puipéad agus Linux? Conas coinbhleachtaí idé-eolaíocha a réiteach mura bhfuil an neart, ná an dúil, ná na hacmhainní ann chun Windows a choinneáil i dtáirgeadh? Maidir leis seo, chomh maith le Web Deploy, tástáil, CI, faoi na cleachtais a bhaineann le TFS a úsáid i dtionscadail atá ann cheana féin, agus, ar ndóigh, maidir le crutches briste agus réitigh oibre, i tras-scríbhinn thuarascáil Alexander.


Mar sin, d'fhág Vasya, tá an tasc ormsa, tá na forbróirí ag fanacht go mífhoighneach le pitchforks. Nuair a thuig mé faoi dheireadh nach bhféadfaí Vasya a thabhairt ar ais, chuaigh mé i mbun gnó. Ar dtús, rinne mé measúnú ar an gcéatadán de Win VMs inár bhflít. Ní raibh an scór i bhfabhar Windows.

.NET Core ar Linux, DevOps ar muin capaill

Ós rud é go bhfuil DevOps á bhforbairt againn go gníomhach, thuig mé go bhfuil gá le rud éigin a athrú sa chur chuige maidir le hiarratas nua a sheachadadh. Ní raibh ach réiteach amháin ann - más féidir, aistrigh gach rud go Linux. Chuidigh Google liom - ag an am sin bhí .Net aistrithe go Linux cheana féin, agus thuig mé gurb é seo an réiteach!

Cén fáth .NET croí i gcomhar le Linux?

Bhí roinnt cúiseanna leis seo. Idir “íoc airgead” agus “ní íoc”, roghnóidh an tromlach an dara ceann – cosúil liomsa. Cosnaíonn ceadúnas le haghaidh MSDB thart ar $1; cosnaíonn sé na céadta dollar a chothabháil cabhlach de mheaisíní fíorúla Windows. Is costas mór é seo do chuideachta mhór. Sin é an fáth coigiltis - chéad chúis. Ní hé an ceann is tábhachtaí, ach ceann de na cinn suntasach.

Tógann meaisíní fíorúla Windows níos mó acmhainní ná a gcuid deartháireacha Linux - tá siad trom. Mar gheall ar scála na cuideachta mhór, roghnaigh muid Linux.

Tá an córas comhtháite go simplí leis an CI atá ann cheana féin. Measaimid féin DevOps forásach, úsáidimid Bambú, Jenkins agus GitLab CI, mar sin ritheann an chuid is mó dár gcuid oibre ar Linux.

Is é an chúis dheireanach tionlacan áisiúil. B’éigean dúinn an bacainn ar iontráil do “tionlacan” a ísliú—na guys a thuigeann an chuid theicniúil, a chinntíonn seirbhís gan bhriseadh, agus a chothaíonn seirbhísí ón dara líne. Bhí siad eolach ar an gcruach Linux cheana féin, agus mar sin tá sé i bhfad níos éasca dóibh táirge nua a thuiscint, a thacú agus a chothabháil ná acmhainní breise a chaitheamh chun an fheidhmiúlacht chéanna bogearraí le haghaidh ardán Windows a thuiscint.

Riachtanais

An gcéad dul síos - áisiúlacht an réitigh nua d'fhorbróirí. Ní raibh gach ceann acu réidh le hathrú, go háirithe tar éis an focal Linux a labhairt. Tá na forbróirí ag iarraidh a gcuid Visual Studio, TFS le autotests le haghaidh tionóil agus caoineoga. Níl sé tábhachtach dóibh conas a dhéantar seachadadh chuig táirgeadh. Dá bhrí sin, shocraigh muid gan an próiseas is gnách a athrú agus gach rud a fhágáil gan athrú d'fhorbairt Windows.

Tionscadal nua ag teastáil a chomhtháthú le CI atá ann cheana féin. Bhí na ráillí ann cheana féin agus bhí an obair ar fad le déanamh ag cur san áireamh paraiméadair an chórais bhainistíochta cumraíochta, caighdeáin seachadta glactha agus córais mhonatóireachta.

Éascaíocht tacaíochta agus oibríochta, mar choinníoll don íostairseach iontrála do gach rannpháirtí nua ó rannáin éagsúla agus ón roinn tacaíochta.

Spriocdháta - inné.

Grúpa Forbartha Win

Cé leis a raibh foireann Windows ag obair ansin?

.NET Core ar Linux, DevOps ar muin capaill

Anois is féidir liom é sin a rá go muiníneach Freastalaí Aitheantais4 Is rogha iontach saor in aisce é ADFS a bhfuil cumais chomhchosúla aige, nó cad é Croí-Chreat Aonáin - mórshiúl d’fhorbróir, áit nach gcaithfidh tú bac a chur ar scripteanna SQL a scríobh, ach cur síos a dhéanamh ar cheisteanna sa bhunachar sonraí i dtéarmaí OOP. Ach ansin, le linn an phlean gníomhaíochta a phlé, d'fhéach mé ar an gcruach seo amhail is dá mba cuneiform Sumerian é, ag aithint PostgreSQL agus Git amháin.

Ag an am sin bhí muid ag baint úsáide as go gníomhach puipéad mar chóras bainistíochta cumraíochta. I bhformhór na dtionscadal a d'úsáideamar GitLab CI, Leaisteacha, seirbhísí cothromaithe ard-ualach ag baint úsáide as HAProxy monatóireacht ar gach rud le Zabbix, ligaments grafana и Prometheus, Jaeger, agus bhí sé seo go léir ag sníomh ar phíosaí iarainn HPESXi ar VMware. Tá a fhios ag gach duine é - clasaiceach den seánra.

.NET Core ar Linux, DevOps ar muin capaill

Breathnaímid agus déanfaimid iarracht tuiscint a fháil ar cad a bhí ag tarlú sular thosaigh muid ar na hidirghabhálacha seo go léir.

Cad a tharla

Is córas sách cumhachtach é TFS a sheachadann ní hamháin cód ón bhforbróir chuig an meaisín táirgthe deiridh, ach tá sraith aige freisin le haghaidh comhtháthú an-solúbtha le seirbhísí éagsúla - chun CI a sholáthar ar leibhéal tras-ardán.

.NET Core ar Linux, DevOps ar muin capaill
Roimhe seo, ba fhuinneoga soladacha iad seo. D'úsáid TFS roinnt gníomhairí Tógála, a úsáideadh chun go leor tionscadal a chur le chéile. Tá 3-4 oibrí ag gach gníomhaire chun tascanna a chomhthreomharú agus an próiseas a bharrfheabhsú. Ansin, de réir pleananna scaoilte, sheachaid TFS an Tógáil úr-bhácáilte chuig freastalaí feidhmchláir Windows.

Cad a theastaigh uainn a bhaint amach?

Bainimid úsáid as TFS le haghaidh seachadadh agus forbairt, agus reáchtáilimid an feidhmchlár ar fhreastalaí Feidhmchlár Linux, agus tá draíocht de chineál éigin eatarthu. seo Bosca Draíocht agus tá salann na hoibre amach romhainn. Sula dtógfaidh mé as a chéile é, tógfaidh mé céim ar leataobh agus déarfaidh mé cúpla focal faoin iarratas.

Tionscadail

Soláthraíonn an feidhmchlár feidhmiúlacht chun cártaí réamhíoctha a láimhseáil.

.NET Core ar Linux, DevOps ar muin capaill

Cliant

Bhí dhá chineál úsáideoirí ann. An chéad fuarthas rochtain trí logáil isteach ag baint úsáide as deimhniú SSL SHA-2. U an dara ceann bhí rochtain ag baint úsáide as logáil isteach agus pasfhocal.

HAProxy

Ansin chuaigh an t-iarratas cliant chuig HAProxy, a réitigh na fadhbanna seo a leanas:

  • údarú príomhúil;
  • foirceannadh SSL;
  • tiúnadh iarratais HTTP;
  • iarratais ar chraoladh.

Fíoraíodh teastas an chliaint feadh an tslabhra. Táimid - t-údarás agus is féidir linn é seo a íoc, ós rud é go n-eisímid féin deimhnithe do chliaint seirbhíse.

Tabhair aird ar an tríú pointe, cuirfimid ar ais chuige beagán níos déanaí.

Inneall

Bhí sé beartaithe acu an t-inneall a dhéanamh ar Linux. Idirghníomhaíonn an t-inneall leis an mbunachar sonraí, lódálann sé an liosta pribhléidí is gá agus ansin, ag brath ar na pribhléidí atá ag an úsáideoir údaraithe, soláthraíonn sé rochtain ar dhoiciméid airgeadais a shíniú agus iad a sheoladh le forghníomhú, nó gineann tuarascáil de chineál éigin.

Coigiltis le HAProxy

Chomh maith leis an dá chomhthéacs a rinne gach cliant nascleanúint, bhí comhthéacs aitheantais ann freisin. Freastalaí Aitheantais4 ligeann sé duit logáil isteach, is analóg chumhachtach saor in aisce é seo le haghaidh ADFS - Seirbhísí Cónaidhm Eolaire Gníomhach.

Próiseáladh an t-iarratas céannachta i roinnt céimeanna. An chéad chéim - custaiméir chuaigh isteach sa backend, a rinne cumarsáid leis an bhfreastalaí seo agus a sheiceáil láithreacht chomhartha don chliant. Mura bhfuarthas é, cuireadh an t-iarratas ar ais go dtí an comhthéacs ónar tháinig sé, ach le hathsheoladh, agus leis an atreorú chuaigh sé chun aitheantais.

An dara céim - fuarthas an t-iarratas chuig an leathanach údaraithe in IdentityServer, an áit ar chláraigh an cliant, agus an comhartha a rabhthas ag súil leis le fada le feiceáil i mbunachar sonraí IdentityServer.

An tríú céim - atreoraíodh an cliant ar ais chuig an gcomhthéacs ónar tháinig sé.

.NET Core ar Linux, DevOps ar muin capaill

Tá gné ag IdentityServer4: cuireann sé an freagra ar ais ar an iarratas ar ais trí HTTP. Is cuma cé mhéad a bhí streachailt againn leis an bhfreastalaí a bhunú, is cuma cé mhéad a chuireamar in iúl dúinn féin leis an doiciméadú, gach uair a fuaireamar iarratas cliant tosaigh le URL a tháinig trí HTTPS, agus chuir IdentityServer an comhthéacs céanna ar ais, ach le HTTP. Bhí ionadh orainn! Agus d'aistrigh muid seo go léir tríd an gcomhthéacs aitheantais go HAProxy, agus sna ceannteidil bhí orainn an prótacal HTTP a mhodhnú go HTTPS.

Cad é an feabhsú agus cén áit ar shábháil tú?

Shábháil muid airgead trí úsáid a bhaint as réiteach saor in aisce chun grúpa úsáideoirí, acmhainní a údarú, ós rud é nár chuireamar IdentityServer4 mar nód ar leith i ndeighleog ar leith, ach d'úsáideamar é in éineacht leis an inneall ar an bhfreastalaí céanna ina ritheann inneall an fheidhmchláir .

Conas ba chóir dó oibriú

Mar sin, mar a gheall mé - Bosca Draíochta. Tuigimid cheana féin go bhfuil ráthaíocht againn bogadh i dtreo Linux. Déanaimis tascanna sonracha a cheapadh a raibh réitigh de dhíth orthu.

.NET Core ar Linux, DevOps ar muin capaill

Léirítear puipéad. Chun cumraíocht seirbhíse agus feidhmchlár a sheachadadh agus a bhainistiú, b'éigean oidis fhionnuar a scríobh. Léiríonn rolla peann luaidhe go deaslámhach cé chomh tapa agus chomh héifeachtach is a rinneadh é.

Modh seachadta. Is é RPM an caighdeán. Tuigeann gach duine nach féidir leat a dhéanamh i Linux gan é, ach bhí an tionscadal féin, tar éis an tionóil, ina shraith comhaid DLL inrite. Bhí thart ar 150 acu, bhí an tionscadal deacair go leor. Is é an t-aon réiteach comhchuí ná an dénártha seo a phacáistiú isteach i RPM agus an feidhmchlár a imscaradh uaidh.

Leagan. Bhí orainn scaoileadh go han-mhinic, agus bhí orainn cinneadh a dhéanamh conas ainm an phacáiste a fhoirmiú. Is ceist í seo maidir le leibhéal an chomhtháthaithe le TFS. Bhí gníomhaire tógála againn ar Linux. Nuair a sheolann TFS tasc chuig láimhseálaí - oibrí - chuig an ngníomhaire Tógála, cuireann sé ar aghaidh freisin roinnt athróg a chríochnaíonn i dtimpeallacht an phróisis láimhseála. Tá an t-ainm Tógála, ainm an leagain agus athróga eile sna hathróga timpeallachta seo. Léigh tuilleadh faoi seo sa rannán “Ag Tógáil pacáiste RPM”.

TFS a shocrú tháinig síos go dtí bunú Phíblíne. Roimhe seo, bhailigh muid gach tionscadal Windows ar ghníomhairí Windows, ach anois tá gníomhaire Linux le feiceáil - gníomhaire Tógála, a chaithfear a áireamh sa ghrúpa tógála, saibhrithe le roinnt déantáin, agus d'inis sé cén cineál tionscadail a thógfar ar an ngníomhaire Tógála seo. , agus an Phíblíne a mhodhnú ar bhealach éigin.

Freastalaí Aitheantais. Ní ADFS ár mbealach, táimid ag dul le haghaidh Foinse Oscailte.

A ligean ar dul tríd na comhpháirteanna.

Bosca Draíocht

Tá ceithre chuid ann.

.NET Core ar Linux, DevOps ar muin capaill

Gníomhaire tógála Linux. Linux, toisc go ndéanaimid tógáil dó - tá sé loighciúil. Rinneadh an chuid seo i dtrí chéim.

  • Cumraigh oibrithe agus ní amháin, ó bhíothas ag súil le hobair dháilte ar an tionscadal.
  • Suiteáil .NET Core 1.x. Cén fáth 1.x nuair a bhíonn 2.0 ar fáil cheana féin sa stór caighdeánach? Toisc nuair a thosaigh muid ag forbairt, ba é 1.09 an leagan cobhsaí, agus socraíodh an tionscadal a dhéanamh bunaithe air.
  • Git 2.x.

RPM-stór. Ba ghá pacáistí RPM a stóráil áit éigin. Glacadh leis go n-úsáidfimid an stór RPM corparáideach céanna atá ar fáil do gach óstach Linux. Sin a rinne siad. Tá an freastalaí stórtha cumraithe cuaille gréasáin a d'íoslódáil an pacáiste RPM riachtanach ón suíomh sonraithe. Thuairiscigh an gníomhaire Build an leagan pacáiste don chuach gréasáin.

GitLab. Aird! Ní úsáideann forbróirí GitLab anseo, ach úsáideann an roinn oibríochtaí chun leaganacha feidhmchlár, leaganacha pacáiste a rialú, monatóireacht a dhéanamh ar stádas gach meaisín Linux, agus stórálann sé an t-oideas - gach manifests Puipéad.

puipéad — réitíonn gach ceist chonspóideach agus seachadann sé go beacht an chumraíocht atá uainn ó Gitlab.

Tosaímid ag tumadh. Conas a oibríonn seachadadh DLL chuig RPM?

Seachadadh DDL chuig RPM

Ligean le rá go bhfuil réalta carraig forbartha .NET againn. Úsáideann sé Visual Studio agus cruthaíonn sé brainse scaoileadh. Tar éis sin, uaslódálann sé é chuig Git, agus is eintiteas TFS é Git anseo, is é sin, is é an stór iarratais lena n-oibríonn an forbróir.

.NET Core ar Linux, DevOps ar muin capaill

Ina dhiaidh sin feiceann TFS go bhfuil gealltanas nua tagtha. Cén app? Sna socruithe TFS tá lipéad a léiríonn na hacmhainní atá ag gníomhaire Tógála ar leith. Sa chás seo, feiceann sé go bhfuil muid ag tógáil tionscadal .NET Core agus roghnaíonn sé gníomhaire Linux Build ón linn.

Faigheann an gníomhaire Tógála na foinsí agus íoslódálann sé na nithe is gá spleáchais ón stór .NET, npm, etc. agus tar éis an t-iarratas féin a thógáil agus an pacáistiú ina dhiaidh sin, cuireann sé an pacáiste RPM chuig an stór RPM.

Ar an láimh eile, tarlaíonn an méid seo a leanas. Tá baint dhíreach ag innealtóir na roinne oibríochtaí le feidhmiú céimneach an tionscadail: athraíonn sé leaganacha na bpacáistí i Hiera sa stór ina bhfuil an t-oideas feidhmchlár stóráilte, agus ina dhiaidh sin spreagann Puipéad Yum, faigh an pacáiste nua ón stór, agus tá an leagan nua den fheidhmchlár réidh le húsáid.

.NET Core ar Linux, DevOps ar muin capaill

Tá gach rud simplí i bhfocail, ach cad a tharlaíonn taobh istigh den ghníomhaire Tógála féin?

Pacáistiú DLL RPM

Fuarthas foinsí tionscadail agus tasc tógála ó TFS. Tógáil gníomhaire a thosaíonn ag tógáil an tionscadail féin ó fhoinsí. Tá an tionscadal le chéile ar fáil mar thacar Comhaid dll, atá pacáistithe i gcartlann zip chun an t-ualach ar an gcóras comhaid a laghdú.

Tá an chartlann ZIP caite chuig an eolaire tógála pacáiste RPM. Ansin, cuireann an script Bash tús leis na hathróga timpeallachta, aimsíonn sé an leagan Tógála, an leagan tionscadail, an cosán chuig an eolaire tógála, agus ritheann sé tógáil RPM. Nuair a bheidh an tógáil críochnaithe, foilsítear an pacáiste chuig stór áitiúil, atá suite ar an ngníomhaire Tógáil.

Ansin, ón ngníomhaire Tógáil go dtí an freastalaí sa stór RPM Seoltar iarratas JSON ag léiriú ainm an leagain agus an tógáil. Déanann Webhook, ar labhair mé faoi níos luaithe, an pacáiste seo a íoslódáil ón stór áitiúil ar an ngníomhaire Tógáil agus cuireann sé an tionól nua ar fáil le suiteáil.

.NET Core ar Linux, DevOps ar muin capaill

Cén fáth a bhfuil an scéim seachadta pacáiste áirithe seo chuig an stór RPM? Cén fáth nach féidir liom an pacáiste cóimeáilte a sheoladh láithreach chuig an stór? Is é an fírinne gur coinníoll é seo chun sábháilteacht a chinntiú. Cuireann an cás seo teorainn leis an bhféidearthacht go n-uaslódálann daoine neamhúdaraithe pacáistí RPM chuig freastalaí a bhfuil rochtain ag gach meaisín Linux air.

Leagan bunachar sonraí

Ag comhairliúchán leis an bhfoireann forbartha, d'éirigh sé amach go raibh na guys níos gaire do MS SQL, ach i bhformhór na dtionscadal neamh-Windows bhí muid ag baint úsáide as PostgreSQL cheana féin le gach a n-acmhainneacht. Ós rud é go raibh cinneadh déanta againn cheana féin gach rud a íocadh a thréigean, thosaigh muid ag úsáid PostgreSQL anseo freisin.

.NET Core ar Linux, DevOps ar muin capaill

Sa chuid seo ba mhaith liom a insint duit conas a leagan muid an bunachar sonraí agus conas a roghnaigh muid idir Flyway agus Entity Framework Core. Breathnaímid ar a gcuid buntáistí agus míbhuntáistí.

CONS

Ní théann Flyway ach bealach amháin, muid ní féidir linn rolladh ar ais - is míbhuntáiste suntasach é seo. Is féidir leat é a chur i gcomparáid le Entity Framework Core ar bhealaí eile - i dtéarmaí áise an fhorbróra. Is cuimhin leat gur chuireamar seo chun tosaigh, agus níorbh é an príomhchritéar ná aon rud a athrú d’fhorbairt Windows.

Chun Flyway linn bhí gá le cumhdach de shaghas éiginionas nach scríobhann na guys Ceisteanna SQL. Tá siad i bhfad níos gaire d'oibriú i dtéarmaí OOP. Scríobhamar treoracha maidir le bheith ag obair le réada bunachar sonraí, ghineamar ceist SQL agus rinneamar é. Tá an leagan nua den bhunachar sonraí réidh, a thástáil - tá gach rud go breá, oibríonn gach rud.

Tá lúide ag Entity Framework Core - faoi ualaí troma é Tógann ceisteanna SQL suboptimal, agus is féidir leis an tarraingt anuas sa bhunachar sonraí a bheith suntasach. Ach ós rud é nach bhfuil seirbhís ard-ualach againn, ní dhéanaimid an t-ualach a ríomh sna céadta RPS, ghlacamar leis na rioscaí seo agus tharmligomar an fhadhb dúinn amach anseo.

Son

Croí-Chreat Aonáin oibríonn sé as an mbosca agus tá sé éasca a fhorbairt, agus Cuilbhealach Comhtháthaíonn go héasca isteach sa CI atá ann cheana féin. Ach déanaimid áisiúil d'fhorbróirí é :)

Nós imeachta rollta suas

Feiceann Puipéad go bhfuil athrú ar leagan pacáiste ag teacht, lena n-áirítear an ceann atá freagrach as imirce. Ar dtús, suiteálann sé pacáiste ina bhfuil scripteanna imirce agus feidhmiúlacht a bhaineann le bunachar sonraí. Tar éis seo, atosaítear an feidhmchlár a oibríonn leis an mbunachar sonraí. Ansin tagann suiteáil na gcomhpháirteanna atá fágtha. Tá cur síos ar an ord ina suiteálfar pacáistí agus ina seoltar feidhmchláir sa léiriú Puipéad.

Úsáideann feidhmchláir sonraí íogaire, mar shampla comharthaí, pasfhocail bunachar sonraí, tarraingítear é seo go léir isteach sa chumraíocht ó Mháistir Puipéad, áit a stóráiltear iad i bhfoirm chriptithe.

Fadhbanna TFS

Tar éis dúinn a chinneadh agus a thuiscint go raibh gach rud ag obair i ndáiríre dúinn, chinn mé breathnú ar cad a bhí ar siúl leis na tionóil i TFS ina n-iomláine don roinn forbartha Win ar thionscadail eile - cibé an raibh muid ag tógáil / ag scaoileadh go tapa nó nach raibh, agus fuair sé amach fadhbanna suntasacha le luas .

Tógann ceann de na príomhthionscadail 12-15 nóiméad le chéile - is fada an lá é, ní féidir leat maireachtáil mar sin. Léirigh anailís thapa íostarraingt uafásach i I/O, agus bhí sé seo ar eagair.

Tar éis anailís a dhéanamh air comhpháirt ar chomhpháirt, d'aithin mé trí fhócas. Ar dtús - "Kaspersky antivirus", a scanadh foinsí ar gach gníomhairí Windows Build. Dara - Windows Innéacsóir. Ní raibh sé faoi mhíchumas, agus rinneadh gach rud a innéacsú i bhfíor-am ar na gníomhairí Tógála le linn an phróisis imlonnaithe.

Tríú - Npm a shuiteáil. Tharla sé gur bhaineamar úsáid as an scéal cruinn seo sa chuid is mó de Phíblínte. Cén fáth go bhfuil sé go dona? Reáchtáiltear nós imeachta suiteála Npm nuair a fhoirmítear an crann spleáchais i pacáiste-glas.json, i gcás ina dtaifeadtar na leaganacha de phacáistí a úsáidfear chun an tionscadal a thógáil. Is é an taobh thíos ná go dtarraingíonn Npm install na leaganacha is déanaí de phacáistí ón Idirlíon gach uair, agus tógann sé seo go leor ama i gcás tionscadal mór.

Uaireanta déanann forbróirí triail ar mheaisín áitiúil chun tástáil a dhéanamh ar an gcaoi a n-oibríonn cuid ar leith nó tionscadal iomlán. Uaireanta d'éirigh sé amach go raibh gach rud fionnuar go háitiúil, ach chuir siad le chéile é, rolladh amach é, agus níor oibrigh aon rud. Tosaímid ag déanamh amach cad é an fhadhb - yeah, leaganacha éagsúla de phacáistí le spleáchais.

cinneadh

  • Foinsí in eisceachtaí AV.
  • Díchumasaigh innéacsú.
  • Athraigh go npm ci.

Is iad na buntáistí a bhaineann le npm ci ná go bhfuilimid Bailímid an crann spleáchais uair amháin, agus faigheann muid an deis an forbróir a sholáthar liosta reatha na bpacáistí, ar féidir leis triail a bhaint as go háitiúil oiread agus is maith leis. seo Sábhálann am forbróirí a scríobh cód.

Cumraíocht

Anois beagán faoi chumraíocht an stór. Go stairiúil úsáidimid Nexus chun stórtha a bhainistiú, lena n-áirítear REPO inmheánach. Tá na comhpháirteanna go léir a úsáidimid chun críocha inmheánacha sa stór inmheánach seo, mar shampla, monatóireacht fhéinscríofa.

.NET Core ar Linux, DevOps ar muin capaill

Bainimid úsáid freisin NuGet, toisc go bhfuil caching níos fearr aige i gcomparáid le bainisteoirí pacáiste eile.

Toradh

Tar éis dúinn na Gníomhairí Tógála a bharrfheabhsú, laghdaíodh an meán-am tógála ó 12 nóiméad go 7 nóiméad.

Má dhéanaimid comhaireamh ar na meaisíní go léir a d'fhéadfaimis a úsáid le haghaidh Windows, ach a d'athraigh muid go Linux sa tionscadal seo, shábháil muid thart ar $10 agus níl sé sin ach ar cheadúnais, agus níos mó má chuirimid an t-ábhar san áireamh.

Pleananna

Don chéad ráithe eile, bhí sé beartaithe againn oibriú ar sheachadadh cód a bharrfheabhsú.

Ag aistriú go híomhá Docker réamhthógtha. Is rud fionnuar é TFS le go leor breiseán a ligeann duit comhtháthú isteach sa Phíblíne, lena n-áirítear cóimeáil truicearbhunaithe de, abair, íomhá Docker. Ba mhaith linn an truicear seo a dhéanamh don cheann céanna pacáiste-glas.json. Má athraíonn comhdhéanamh na gcomhpháirteanna a úsáidtear chun an tionscadal a thógáil ar bhealach éigin, tógfaimid íomhá Docker nua. Úsáidtear é níos déanaí chun an coimeádán a imscaradh leis an bhfeidhmchlár le chéile. Ní hé seo an cás anois, ach táimid ag pleanáil aistriú chuig ailtireacht microservice i Kubernetes, atá ag forbairt go gníomhach inár gcuideachta agus tá sé ag freastal ar réitigh táirgeachta ar feadh i bhfad.

Achoimre

Molaim do gach duine Windows a chaitheamh amach, ach níl sé sin toisc nach bhfuil a fhios agam conas é a chócaireacht. Is é an chúis go bhfuil an chuid is mó réitigh Opensource Stack Linux. an bhfuil tú ceart go leor shábháil ar acmhainní. Is é mo thuairim go mbaineann an todhchaí le réitigh Foinse Oscailte ar Linux le pobal cumhachtach.

Próifíl cainteoir Alexander Sinchinov ar GitHub.

DevOps Conf comhdháil ar chomhtháthú próisis forbartha, tástála agus oibriúcháin do ghairmithe ag gairmithe. Sin an fáth ar an tionscadal ar labhair Alastar faoi? curtha i bhfeidhm agus ag obair, agus ar lá na feidhmíochta bhí dhá eisiúint rathúla. Ar DevOps Conf ag RIT++ Ar 27 agus 28 Bealtaine beidh níos mó cásanna comhchosúla ó chleachtóirí fós ann. Is féidir leat léim go fóill isteach sa charráiste seo caite agus tuairisc a chur isteach nó tóg do chuid ama a chur in áirithe ticéad. Buail linn i Skolkovo!

Foinse: will.com

Add a comment