Finch, проект с отворен код на AWS за Linux контейнери 

сипка

Finch, инструмент за разработка на команден ред за създаване, стартиране и публикуване на Linux контейнери

Преди няколко дни Amazon обяви чрез публикация в блога си старта на своя проект с отворен код „Finch“, който разработва набор от инструменти за изграждане, публикуване и изпълнение на Linux контейнери във формат OCI (Open Container Initiative).

Споменава се, че основната цел на проекта „Finch“ е да опрости работата с Linux контейнери на хост системи, които не са базирани на Linux.

Finch е клиент с отворен код за разработка на контейнери. Неговият прост инсталатор осигурява минимален собствен клиент заедно с обективно разпространение на други компоненти с отворен код. Вместо да създава още повече възможности за разсъждение и избор, Finch има за цел да помогне за популяризирането на други проекти, като ги направи по-лесни за инсталиране и използване, като същевременно предлага прост собствен клиент, който да свърже всичко заедно.

Относно Финч

Проектът Finch разчита на няколко проекта с отворен код, включително nerdctl, containerds, BuildKit и Lima. Това ви позволява да започнете веднага, без да е необходимо да разбирате и конфигурирате всички тези компоненти поотделно (докато изпълнението на контейнери на Linux системи не е тривиална задача, създаването на среда за изпълнение на Linux контейнери на Windows и macOS не е).

За работа предлагаме собствена помощна програма Finch, която крие подробностите за работа с всеки компонент зад унифициран интерфейс. За да започнете, просто инсталирайте предоставения пакет, който включва всичко необходимо, след което можете да създавате и стартирате контейнери веднага.

За изграждане на интерфейса на командния ред във Finch се използват разработки от проекта nerdctl, който предоставя набор от Docker-съвместими команди за изграждане, изпълнение, публикуване и зареждане на контейнери (изграждане, изпълнение, натискане, изтегляне и т.н.), като както и допълнителни опционални функции като работа без root, криптиране на изображения, разпространение на P2P изображения чрез IPFS и сертифициране на изображения с цифров подпис.

Освен това се споменава, че containerd се използва като среда за изпълнение за управление на контейнери, докато инструментариумът BuildKit се използва за създаване на изображения в OCI формат, а Lima се използва за стартиране на Linux виртуални машини, конфигуриране на споделяне на файлове и пренасочване на мрежови портове.

Що се отнася до характеристиките на Finch, акцентите включват поддръжка на постоянни дискове, подобрения във времето за инициализация на виртуални машини, намаляване наполовина на времето за стартиране за разработчиците, експериментална поддръжка за рамката за виртуализация на Apple, осигуряване на допълнителни ускорения на производителността във Finch VM и инструмент за бенчмарк, който се изпълнява при всеки commit, за да валидира съществуващите показатели за производителност.

В момента Finch е във версия 1.0, която е отбелязана като първата стабилна версия, подходяща за производствени внедрявания и ежедневна употреба на платформата macOS. Поддръжката на клиенти за Linux и Windows се планира да бъде добавена в бъдещи версии.

Искаме Finch да бъде стабилен и ефективен инструмент за разработка по време на изпълнение, който улеснява потребителите да изпълняват задачите си за разработка, като създават и изпълняват контейнери локално и взаимодействат с регистри на контейнери. Тази версия 1.0 представя нашето убеждение, че Finch е готов за производствена употреба като ежедневен инструмент на разработчиците на контейнери на macOS.

Като част от проекта, Amazon също подготви няколко разширения, които са пренесени в основното тяло на проекта nerdctl. По-специално са подготвени компоненти за цифрово подписване на изображения, както и поддръжка за създаване и стартиране на изображения с помощта на технологията SOCI (Seekable OCI), първоначално създадена за AWS и позволяваща значително по-бързо зареждане на изображения на контейнери ( SOCI ви позволява да започнете стартирането без изчакване изображението да бъде напълно заредено и зареждане на частите, необходими за работата, когато са необходими).

За тези, които се интересуват от проекта, кодът на Финч е написан на Go и се разпространява под лиценза Apache 2.0 в GitHub . Можете да намерите подробности за изданието в оригиналното съобщение в блога на AWS.


Добавяне като предпочитан източник в Google