O projeto Finch de código aberto da Amazon Web Services (AWS) fornece aos desenvolvedores um cliente de linha de comando para criar, executar e publicar contêineres Linux.
Inicialmente disponível em clientes macOS, Finch fornece aos desenvolvedores um instalador extensível para componentes de código aberto, como Lima, nerdctl, containerd e BuildKit, necessários para criar e executar contêineres localmente e, em seguida, construir e publicar imagens de contêiner Open Container Initiative (OCI).
Finch atua como um passthrough para nerdctl rodando em uma máquina virtual gerenciada por Lima. Ele simplifica o gerenciamento e a instalação de todos os componentes de código aberto necessários e suas dependências, eliminando a necessidade de os desenvolvedores gerenciarem atualizações e correções de dependências. Por fim, a AWS visa fornecer aos desenvolvedores uma experiência mínima e simples de build/run/push/pull focada nos principais comandos do fluxo de trabalho.
Uma conta da AWS não é necessária para usar o Finch, mas a AWS fornecerá suporte ao Finch de acordo com os planos atuais quando o Finch for usado junto com os serviços da AWS.
Como o Finch é integrado diretamente ao nerdctl, todos os comandos e opções típicos funcionarão da mesma forma que nas plataformas Linux. Os desenvolvedores podem extrair imagens de registros, executar contêineres localmente e criar imagens usando Dockerfiles existentes. Finch também permite que eles criem e executem imagens para arquiteturas amd64 ou arm64 usando emulação para que os desenvolvedores possam criar imagens para sistemas Mac baseados em Intel ou M1 Apple Silicon.
Com o lançamento inicial, o suporte para volumes e redes é fornecido, e o Docker Compose é compatível para executar e testar vários aplicativos de contêiner. No futuro, a AWS também se comprometerá a criar versões do Finch para clientes Windows e Linux.
O principal cliente Finch sempre será uma distribuição com curadoria composta inteiramente de projetos de código aberto e neutros para evitar a fragmentação. A AWS afirma que as extensões serão gerenciadas como projetos separados com seus próprios ciclos de lançamento para encontrar um equilíbrio para fornecer recursos específicos e, ao mesmo tempo, colaborar no contexto da comunidade de código aberto mais ampla.
À medida que o projeto evolui, a AWS também se compromete a tornar o componente de virtualização mais transparente. Isso permitirá que a comunidade crie uma instância com um tamanho menor e tempos de inicialização mais rápidos. A partir de agora, o Finch também não possui interface gráfica nem integrações para gerenciamento de cluster ou outras ferramentas de orquestração de contêineres.
David Nalley, chefe de estratégia e marketing de código aberto da AWS, disse que Finch é a mais recente de uma série de iniciativas de código aberto que a AWS planeja colocar mais recursos. Cada grupo funcional da AWS está sendo incentivado a dedicar mais recursos para contribuir com projetos de código aberto. Como todo provedor de serviços em nuvem, a AWS é frequentemente criticada por monetizar software de código aberto, mesmo quando os mantenedores reclamam que não há oportunidades de receita disponíveis para eles. Alguns chegaram ao ponto de alterar os termos sob os quais seu software de código aberto pode ser licenciado para impedir que os provedores de serviços em nuvem lancem um serviço baseado em seu código-fonte aberto. Outros, no entanto, argumentarão que esses termos de licenciamento estão sendo apresentados por empresas que estão usando software de código aberto como uma isca para vender licenças de suporte de nível empresarial.
Independentemente de como as organizações se sentem sobre como o software de código aberto é mantido e consumido, a única coisa certa é que, com alguma ajuda adicional da AWS, em breve haverá muito mais.
Fonte: https://containerjournal.com/features/aws-open-source-finch-tool-streamlines-container-app-development/