Contêiner Microsoft WSL lançado oficialmente, Windows se torna ainda mais plataforma de execução de contêiner Linux

📅 2026-10-01

Resumo:

A Microsoft migrou os WSL Containers de uma versão prévia pública para uma versão disponível ao público em geral. Os usuários podem executar "wsl --update" para obter funções relacionadas, incluindo a ferramenta de linha de comando wslc.exe e a API WSL Containers. Embora o número da versão oficial no GitHub seja WSL 3.0.1, isso não significa que a Microsoft lançou o WSL 3; A Microsoft negou anteriormente a existência desta nova versão.

Anteriormente, se os desenvolvedores do Windows quisessem executar contêineres Linux, geralmente precisavam instalar o Docker Desktop ou configurar manualmente o Docker Engine na distribuição WSL Linux. WSL Containers integra fluxos de trabalho de contêiner diretamente no WSL. wslc.exe pode ser usado para construir, executar, gerenciar e implantar contêineres Linux a partir do Windows. Ele também fornece container.exe como um alias. Os desenvolvedores familiarizados com o Docker também podem usar comandos semelhantes. A API de suporte permite que aplicativos nativos do Windows criem e controlem contêineres Linux por meio de código e oferece suporte a chamadas C# e C++/WinRT, entrada e saída padrão, montagem de arquivos, acesso à rede e GPU.

Atualizando-WSL-to-version-3.0.1-to-get-Containers-in-general-availability.jpg

"Nativo" aqui não significa que o contêiner é executado no kernel do Windows. Na verdade, o contêiner é executado no kernel Linux na máquina virtual WSL. A Microsoft redesenhou a forma como as sessões de contêiner são gerenciadas. Aplicativos WSL regulares criam máquinas virtuais por meio do serviço wslservice.exe do Windows com permissões mais altas; WSL Containers usa o serviço para criar um subprocesso chamado wslcsession.exe, que cria contêineres, monta diretórios e vincula portas de rede em nome do usuário. A Microsoft disse que cada sessão é hospedada por um processo independente, o que pode fortalecer o isolamento; as permissões necessárias para operações de sessão também são inferiores às de wslservice.exe, o que ajuda a melhorar a segurança.

Cada sessão possui um disco rígido virtual independente, que é salvo no diretório de dados do aplicativo do usuário. Os contêineres podem usar pastas do Windows por meio de montagens de volume. A Microsoft usa virtiofs para compartilhar diretórios com máquinas virtuais, dizendo que é cerca de duas vezes mais rápido que a solução Plan 9 usada pelas distribuições WSL tradicionais para acessar a unidade C. Para contêineres que exigem sistemas de arquivos Linux nativos ou capacidade de armazenamento limitada, volumes de disco rígido virtual podem ser usados.

wslc-ubuntu.jpgRunning-uname-a-inside-a-WSL-container-confirms-it-is-a-real-Linux-kernel-not-a-translation-layer.png

A versão oficial adiciona comandos como reinicialização de contêiner, cópia de arquivos, conexão e desconexão de rede, mais opções de driver de rede, verificação de integridade de contêiner e montagem de diretório ao criar e executar contêineres. A rede também introduz uma arquitetura chamada Consommé. O tráfego de rede da máquina virtual Linux entrará na fila virtio na forma de quadros Ethernet e, em seguida, o processo do Windows será executado enquanto o usuário lida com consultas DNS, tráfego TCP e UDP e mapeamento de portas. A Microsoft disse que este método é mais compatível com VPNs e firewalls e irá melhorar os problemas de rede que os usuários de WSL enfrentam há muito tempo. Em testes anteriores, o Windows conseguiu acessar o serviço Flask em execução no contêiner por meio de localhost sem configuração de rede adicional.

The-Flask-server-inside-the-Linux-container-reached-through-localhost-on-Windows-with-no-extra-networking-setup.png

A Microsoft também está adicionando recursos de gerenciamento e segurança para uso empresarial. Os administradores de TI podem habilitar ou desabilitar contêineres WSL por meio do Microsoft Intune e restringir imagens de contêiner para serem extraídas apenas de registros aprovados. A integração WSL existente do Microsoft Defender for Endpoint também é estendida a contêineres, mostrando atividades de processos, arquivos e rede dentro do contêiner e correlacionando-as ao host do Windows. A Microsoft disse que esses recursos, combinados com o Intune e o Defender, podem fornecer os controles de segurança necessários para ambientes corporativos.

wslc-shows-the-full-command-list.jpg

Em termos de ferramentas de desenvolvimento, a Microsoft anunciou que a extensão VS Code Dev Containers pode usar wslc como driver de contêiner. A extensão VS Code Containers e o Aspire também suportam esse recurso. O gerente de produto WSL da Microsoft, Craig Loewen, disse que os usuários só precisam selecionar wslc como um programa executável nas configurações. No entanto, alguns desenvolvedores relataram que, mesmo que a extensão seja substituída pela versão oficial, o Dev Containers ainda avisará que o comando docker não pode ser encontrado, indicando que a integração atual do editor ainda pode precisar ser verificada e ajustada.

O suporte ao Compose, que os desenvolvedores mais esperam, ainda está em desenvolvimento. O Compose pode gravar vários contêineres, como front-end, API de back-end, banco de dados e cache no mesmo arquivo de configuração compose.yaml e, em seguida, iniciar todo o conjunto de serviços com um comando. A Microsoft disse que o Compose é o recurso wslc mais solicitado no momento e espera que, no futuro, o "wsl compose up" possa executar diretamente os arquivos de configuração existentes sem modificação. Durante os testes anteriores, devido à falta do Compose, os desenvolvedores só podiam iniciar serviços em projetos multicontêineres, um por um.

wslc-storage.webpwslc-network.webp

Ainda há lacunas em algumas cenas avançadas. Os engenheiros da Microsoft mencionaram que os desenvolvedores podem tentar usar o projeto da comunidade wslc-remote que eles mantêm para construir e enviar imagens dentro da distribuição WSL; A Microsoft espera oferecer suporte nativo no futuro, mas ainda precisa lidar com muitas situações especiais. Outros usuários disseram que a falta de suporte ao parâmetro "--privileged" os forçou a voltar para o Docker para executar clusters Kubernetes kind e k3d. A Microsoft disse que os recursos relacionados serão lançados em breve, o código entrou no ramo principal e deverá entrar na fase de visualização em breve. Portanto, a disponibilidade oficial não significa que o wslc tenha todas as funções de uma plataforma de contêiner madura.

Os contêineres WSL também oferecem suporte ao Windows 10 e ao Windows Server. O gerente de produto WSL da Microsoft disse que, desde que o sistema atual suporte WSL, os contêineres poderão ser executados; O Windows Latest também testou o wslc no Windows 10 antes e construiu e executou com sucesso o painel Flask. A Microsoft confirmou que o Windows Server também oferece suporte ao uso desse recurso em ambientes de produção.

WSL-Container-in-Windows-10.jpgWSL-running.jpg

O relatório comparou esta mudança com a atitude anterior da Microsoft em relação ao Linux. O ex-CEO da Microsoft, Steve Ballmer, certa vez chamou o Linux de “câncer”. Hoje, a Microsoft continua a melhorar o WSL, a abri-lo e a melhorar o acesso a arquivos e os recursos de rede entre Windows e Linux. A Microsoft disse que o Linux agora não é mais apenas um ambiente de desenvolvimento, mas também pode hospedar cargas de trabalho nativas de IA e nuvem; o artigo também mencionou que o Google está fornecendo suporte nativo ao Windows 11 e WSL para suas novas ferramentas de IA, e a Canonical disse que a taxa de crescimento do Ubuntu no Windows 11 excedeu a dos computadores Linux nativos. Apesar disso, o autor acredita que a maioria dos desenvolvedores não desistirá do Docker Desktop imediatamente antes do Compose e de alguns recursos avançados serem concluídos; se a configuração não modificada do Compose puder ser executada diretamente no futuro, mais pessoas poderão considerar a desinstalação do Docker Desktop.

Tags relacionadas

Artigos relacionados

Comentários

0/500
Captcha (click to refresh)
Sem comentários