Docker Engine 29: Containerd se Torna Padrão, Suporte Experimental ao nftables
O Docker Engine 29 define o containerd como o repositório de imagens padrão e introduz suporte experimental ao nftables para redes Linux modernas.
Docker, uma plataforma de código aberto líder para desenvolvimento, distribuição e execução de aplicações em contêineres, lançou oficialmente o Docker Engine 29, com foco na modernização e na integração com o ecossistema mais amplo de contêineres.
A mudança mais significativa é que o repositório de imagens do containerd agora serve como padrão para todas as novas instalações. Essa alteração substitui o antigo backend de graph driver do Docker para gerenciar camadas de imagens. Na verdade, isso não é surpreendente.
O containerd tem sido há muito tempo o núcleo da camada de runtime do Docker, mas até agora, o Docker continuava a depender de seu próprio subsistema de armazenamento para gerenciamento de imagens. A adoção do repositório de imagens do containerd simplifica a arquitetura do Docker ao unificar execução e armazenamento, reduzir a duplicação e alinhar o Docker Engine com plataformas como o Kubernetes, que já dependem do containerd.
Para os usuários, essa mudança traz os seguintes benefícios:
- Design simplificado: o Docker Engine agora usa o containerd tanto para o runtime quanto para o armazenamento.
- Interoperabilidade aprimorada: Alinha-se com ferramentas e fluxos de trabalho baseados em containerd.
- Inovação futura: Permite novos recursos como otimizações de snapshotter, puxamento sob demanda e distribuição de imagens peer-to-peer.
As instalações existentes continuarão a usar a configuração atual, mas novos usuários e novas instalações adotarão automaticamente o repositório de imagens do containerd.
Outra adição notável é o suporte experimental para nftables. Até agora, o Docker Engine tem dependido dos tradicionais iptables e ip6tables para gerenciar regras de rede em ponte e sobreposição. No entanto, com as distribuições Linux gradualmente descontinuando o iptables, o Docker está caminhando para um framework de firewall mais moderno e eficiente.
Quando habilitado, o Docker Engine v29 agora pode criar regras nftables diretamente, em vez de depender da tradução através do iptables-nft. Os usuários podem testar o nftables iniciando o Docker com:
dockerd --firewall-backend=nftablesLembre-se de que este recurso ainda é experimental e não é recomendado para uso em produção. O suporte ao Docker Swarm e outras otimizações do nftables estão planejados para lançamentos futuros.
Nos bastidores, o projeto Moby do Docker — o núcleo de código aberto por trás do Docker Engine — migrou para módulos Go, substituindo seu sistema legado de gerenciamento de dependências.
Ao mesmo tempo, com o Docker Engine v29, a versão mínima da API suportada foi aumentada para 1.44, correspondente ao Moby v25. Isso significa que clientes Docker mais antigos (v25 e anteriores) não poderão mais se comunicar com o Docker Engine mais recente por padrão.
Além disso, além das mudanças mencionadas acima, a nova versão inclui muitas correções de bugs e melhorias. Para mais detalhes, consulte o changelog completo ou as notas de lançamento desta edição. O anúncio oficial está no Blog do Docker.
Usuários de Linux que utilizam Docker podem atualizar para a versão 29 através dos repositórios de sua distribuição. Os usuários do Docker Desktop receberão essas mudanças automaticamente nas próximas atualizações do Docker Desktop.
