Finch, komandrindas izstrādes rīks Linux konteineru izveidei, palaišanai un publicēšanai
Pirms vairākām dienām Amazon emuāra ierakstā paziņoja par sava atvērtā pirmkoda projekta "Finch" palaišanu, kas izstrādā rīku komplektu Linux konteineru veidošanai, publicēšanai un palaišanai OCI (Open Container Initiative) formātā.
Tiek minēts, ka "Finch" projekta galvenais mērķis ir vienkāršot darbu ar Linux konteineriem uz ne-Linux bāzes resursdatoru sistēmām.
Finch ir atvērtā koda klients konteineru izstrādei. Tās vienkāršais instalētājs nodrošina minimālu vietējo klientu, kā arī citu atvērtā pirmkoda komponentu objektīvu izplatīšanu. Tā vietā, lai radītu vēl vairāk iespēju apsvērt un izvēlēties, Finch cenšas palīdzēt reklamēt citus projektus, atvieglojot to instalēšanu un lietošanu, vienlaikus piedāvājot vienkāršu vietējo klientu, kas to visu var savienot.
Par Finču
Finch projekts balstās uz vairākiem atvērtā pirmkoda projektiem, tostarp nerdctl, containerd, BuildKit un Lima. Tas ļauj nekavējoties sākt darbu, neizprotot un nekonfigurējot visus šos komponentus atsevišķi (lai gan konteineru palaišana Linux sistēmās nav viegls uzdevums, vides izveide Linux konteineru palaišanai operētājsistēmās Windows un macOS nav).
Darbam mēs piedāvājam savu Finch utilītu, kas slēpj informāciju par darbu ar katru komponentu aiz vienota interfeisa. Lai sāktu, vienkārši instalējiet piedāvāto pakotni, kurā ir viss nepieciešamais, pēc tam varat nekavējoties izveidot un palaist konteinerus.
Lai izveidotu komandrindas saskarni programmā Finch, tiek izmantoti nerdctl projekta izstrādnes, kas nodrošina ar Docker saderīgu komandu kopu, lai izveidotu, palaistu, publicētu un ielādētu konteinerus (veidot, palaist, nospiest, vilkt utt.), piemēram, kā arī papildu papildu funkcijas, piemēram, bezsakņu darbība, attēlu šifrēšana, P2P attēlu izplatīšana, izmantojot IPFS, un digitāli parakstīta attēla sertifikācija.
Turklāt tiek minēts, ka konteiners tiek izmantots kā izpildlaiks konteineru pārvaldībai, savukārt BuildKit rīku komplekts tiek izmantots attēlu veidošanai OCI formātā un Lima tiek izmantots Linux virtuālo mašīnu palaišanai, failu koplietošanas konfigurēšanai un tīkla portu pāradresācijai.
Runājot par Finch funkcijām, svarīgākie elementi ietver pastāvīgu disku atbalstu, uzlabojumus VM inicializācijas laikā, izstrādātāju startēšanas laika samazināšanu uz pusi, eksperimentālu atbalstu Apple virtualizācijas ietvaram, papildu veiktspējas paātrinājumu nodrošināšanu Finch VM un etalonu rīku, kas darbojas katrā izmaiņā, lai validētu esošos veiktspējas rādītājus.
Pašlaik Finch ir versija 1.0, kas ir atzīmēta kā pirmā stabilā versija, kas piemērota ražošanas izvietošanai un ikdienas lietošanai macOS platformā. Nākotnēs laidienos plānots pievienot klientu atbalstu operētājsistēmām Linux un Windows.
Mēs vēlamies, lai Finch būtu stabils un efektīvs izpildlaika izstrādes rīks, kas lietotājiem atvieglo izstrādes uzdevumu izpildi, lokāli izveidojot un darbinot konteinerus un mijiedarbojoties ar konteineru reģistriem. Šī versija 1.0 atspoguļo mūsu pārliecību, ka Finch ir gatavs lietošanai ražošanā kā konteineru izstrādātāja ikdienas rīks operētājsistēmā MacOS.
Projekta ietvaros Amazon ir arī sagatavojis vairākus paplašinājumus, kas ir pārnesti uz nerdctl projekta galveno daļu. Jo īpaši ir sagatavoti komponenti attēlu digitālajai parakstīšanai, kā arī atbalsts attēlu izveidei un palaišanai, izmantojot SOCI (Seekable OCI) tehnoloģiju, kas sākotnēji radīta AWS un ļauj ievērojami ātrāk ielādēt konteinera attēlus ( SOCI ļauj sākt palaišanu bez gaidot attēla pilnīgu ielādi un ielādējot darbam nepieciešamās daļas pēc nepieciešamības).
Tiem, kas ir ieinteresēti projektā, Finča kods ir rakstīts Go valodā un izplatīts saskaņā ar Apache 2.0 licenci vietnē GitHub . Sīkāku informāciju par izlaidumu varat atrast sākotnējā paziņojumā AWS emuārā.