Finch, isang AWS open source na proyekto para sa mga container ng Linux 

Finch

Finch, isang command-line development tool para sa paggawa, pagpapatakbo at pag-publish ng mga container ng Linux

Ilang araw na ang nakalipas , inanunsyo ng Amazon, sa pamamagitan ng isang blog post, ang paglulunsad ng open-source project nito na "Finch," na bumubuo ng isang hanay ng mga tool upang bumuo, mag-publish, at magpatakbo ng mga Linux container sa OCI (Open Container Initiative) na format.

Nabanggit na ang pangunahing layunin ng proyektong "Finch" ay gawing simple ang pagtatrabaho sa mga Linux container sa mga host system na hindi nakabatay sa Linux.

Ang Finch ay isang open source na kliyente para sa pagbuo ng container. Ang simpleng installer nito ay nagbibigay ng kaunting katutubong kliyente kasama ang layuning pamamahagi ng iba pang mga bahagi ng open source. Sa halip na lumikha ng higit pang mga opsyon upang mangatwiran at pumili mula sa, Finch ay naglalayong tumulong sa pagsulong ng iba pang mga proyekto sa pamamagitan ng paggawa ng mga ito na mas madaling i-install at gamitin, habang nag-aalok ng isang simpleng katutubong kliyente upang itali ang lahat ng ito.

Tungkol kay Finch

Ang proyektong Finch ay umaasa sa ilang open-source na proyekto, kabilang ang nerdctl, containerd, BuildKit, at Lima. Nagbibigay-daan ito sa iyo na makapagsimula kaagad nang hindi kinakailangang maunawaan at i-configure ang lahat ng mga bahaging ito nang hiwalay (bagaman ang pagpapatakbo ng mga container sa mga sistema ng Linux ay hindi isang madaling gawain, ang paglikha ng isang kapaligiran para patakbuhin ang mga container ng Linux sa Windows at macOS ay hindi).

Para sa trabaho, nag-aalok kami ng aming sariling Finch utility, na nagtatago ng mga detalye ng pagtatrabaho sa bawat bahagi sa likod ng pinag-isang interface. Upang makapagsimula, i-install lang ang ibinigay na package, na kinabibilangan ng lahat ng kailangan mo, pagkatapos nito ay maaari kang agad na gumawa at magpatakbo ng mga container.

Upang buuin ang interface ng command line sa Finch, ginagamit ang mga development mula sa nerdctl project, na nagbibigay ng isang set ng Docker-compatible na command para bumuo, magpatakbo, mag-publish, at mag-load ng mga container (bumuo, tumakbo, itulak, hilahin, atbp.), tulad ng pati na rin ang mga karagdagang opsyonal na feature gaya ng walang ugat na operasyon, pag-encrypt ng imahe, pamamahagi ng P2P na imahe gamit ang IPFS, at digitally signed image certification.

Bilang karagdagan, nabanggit na ang containerd ay ginagamit bilang isang runtime para sa pamamahala ng lalagyan, habang ang toolkit ng BuildKit ay ginagamit upang lumikha ng mga imahe sa OCI na format at ang Lima ay ginagamit upang simulan ang mga virtual machine ng Linux, i-configure ang pagbabahagi ng file at pagpapasa ng port ng network.

Tungkol naman sa mga tampok ng Finch, kabilang sa mga highlight ang suporta sa persistent disk, mga pagpapabuti sa oras ng pagsisimula ng VM, pagbawas ng oras ng pagsisimula sa kalahati para sa mga developer, eksperimental na suporta para sa virtualization framework ng Apple, pagbibigay ng karagdagang pagpapabilis ng pagganap sa Finch VM, at isang benchmark tool na tumatakbo sa bawat commit upang patunayan ang mga umiiral na sukatan ng pagganap.

Sa kasalukuyan, ang Finch ay nasa bersyon 1.0, na minarkahan bilang ang unang stable na bersyon, na angkop para sa mga deployment ng produksyon at pang-araw-araw na paggamit sa macOS platform. Ang suporta ng kliyente para sa Linux at Windows ay binalak na idagdag sa mga susunod na release.

Gusto naming maging matatag at mahusay na tool sa pagbuo ng runtime ang Finch na nagpapadali para sa mga user na magawa ang kanilang mga gawain sa pag-develop sa pamamagitan ng paggawa at pagpapatakbo ng mga container nang lokal at pakikipag-ugnayan sa mga registry ng container. Ang bersyon 1.0 na ito ay kumakatawan sa aming paniniwala na ang Finch ay handa na para sa paggamit ng produksyon bilang pang-araw-araw na tool ng developer ng container sa macOS.

Bilang bahagi ng proyekto, naghanda rin ang Amazon ng ilang extension na na-port sa pangunahing katawan ng proyekto ng nerdctl. Sa partikular, ang mga bahagi para sa digital signing ng mga imahe ay inihanda, pati na rin ang suporta para sa paglikha at paglulunsad ng mga larawan gamit ang SOCI (Seekable OCI) na teknolohiya, na orihinal na nilikha para sa AWS at nagbibigay-daan sa mas mabilis na pag-load ng mga container na imahe ( SOCI ay nagbibigay-daan sa iyo upang simulan ang paglulunsad nang walang naghihintay na ganap na mai-load ang imahe at i-load ang mga bahaging kinakailangan para sa trabaho kung kinakailangan).

Para sa mga interesado sa proyekto, ang code ni Finch ay nakasulat sa Go at ipinamamahagi sa ilalim ng lisensyang Apache 2.0 sa GitHub . Makikita mo ang mga detalye ng paglabas sa orihinal na anunsyo sa AWS blog.


Idagdag bilang ginustong mapagkukunan sa Google