Docker Desktop: Como corrigir erro "An error occurred while running the command. Wsl/Service/RegisterDistro/CreateVm/0x800705b4


Ao utilizar o Docker Desktop em ambientes Windows Server com WSL 2 e virtualização aninhada, pode ocorrer uma falha durante a inicialização do Docker, impedindo a criação ou o registro da distribuição interna utilizada pelo Docker Desktop.
Esse comportamento foi identificado em cenários onde o Docker Desktop instala automaticamente uma versão mais recente do WSL. Em determinados ambientes com Windows Server e virtualização aninhada, essa versão pode apresentar incompatibilidade durante a criação da máquina virtual do WSL, resultando no erro Wsl/Service/RegisterDistro/CreateVm/0x800705b4.
Após validação técnica, a solução recomendada é instalar manualmente uma versão anterior do WSL, especificamente a versão 2.5.10, antes da instalação do Docker Desktop.
Ao abrir ou executar o Docker Desktop, o seguinte erro pode ser exibido:
There was a problem with WSL
An error occurred while running a WSL command. Please check your WSL
configuration and try again.
running wsl.exe: An error occurred while running the command.
Wsl/Service/RegisterDistro/CreateVm/0x800705b4:
c:\windows\system32\wsl.exe --import-in-place docker-desktop
<home>\appdata\local\docker\wsl\main\ext4.vhdx: exit status 0xffffffff
(stderr: wsl: Não há suporte para virtualização aninhada nesta máquina.
) stdout: Esta operação foi retornada porque o tempo limite expirou.
Código de erro: Wsl/Service/RegisterDistro/CreateVm/0x800705b4
, wslErrorCode: Wsl/Service/RegisterDistro/CreateVm/0x800705b4)
Na prática, o Docker Desktop não consegue inicializar corretamente o ambiente WSL utilizado internamente para executar os containers.
Este procedimento se aplica principalmente a ambientes com as seguintes características:
Esse cenário costuma ocorrer em servidores virtualizados, onde o Windows Server está sendo executado dentro de uma VPS ou VM e depende de virtualização aninhada para que o WSL 2 funcione corretamente.
O problema está relacionado à versão do WSL instalada no sistema.
Durante a instalação do Docker Desktop, uma versão mais recente do WSL pode ser instalada automaticamente. Em alguns ambientes Windows Server com virtualização aninhada, essa versão pode falhar durante a criação da VM utilizada pelo WSL, gerando o erro:
Wsl/Service/RegisterDistro/CreateVm/0x800705b4
A mensagem também pode indicar ausência de suporte à virtualização aninhada, mesmo quando ela já está habilitada no ambiente. Nesses casos, o problema pode estar associado à compatibilidade entre a versão do WSL, o Docker Desktop e o ambiente virtualizado.
A solução validada consiste em instalar manualmente uma versão anterior do WSL antes da instalação do Docker Desktop.
Versão recomendada:
WSL 2.5.10
Link oficial para download:
https://github.com/microsoft/WSL/releases/download/2.5.10/wsl.2.5.10.0.x64.msi
A ordem correta de instalação deve ser:
1. Instalar o WSL 2.5.10
2. Instalar o Docker Desktop
Caso o Docker Desktop ainda não tenha sido instalado no servidor, siga os passos abaixo.
Baixe o instalador MSI do WSL 2.5.10 pelo link abaixo:
https://github.com/microsoft/WSL/releases/download/2.5.10/wsl.2.5.10.0.x64.msi
Após o download, execute o instalador no Windows Server e aguarde a conclusão da instalação.
Depois de concluir a instalação do WSL 2.5.10, instale o Docker Desktop normalmente.
É importante que o WSL seja instalado antes do Docker Desktop. Dessa forma, o Docker utilizará a versão já instalada no ambiente, evitando que uma versão mais recente do WSL seja aplicada automaticamente durante o processo.
Caso o Docker Desktop já tenha sido instalado anteriormente, é possível que uma versão mais recente do WSL tenha sido adicionada automaticamente ao sistema.
Nesse cenário, será necessário remover a versão atual do WSL antes de instalar a versão 2.5.10.
Acesse o servidor Windows e abra o PowerShell com permissão de administrador.
Execute o comando abaixo:
wsl --uninstall
Aguarde a conclusão do processo de remoção.
Após a remoção da versão atual, baixe e instale manualmente o WSL 2.5.10:
https://github.com/microsoft/WSL/releases/download/2.5.10/wsl.2.5.10.0.x64.msi
Execute o instalador no servidor e aguarde a finalização da instalação.
Com o WSL 2.5.10 instalado, realize novamente a instalação do Docker Desktop.
Após a instalação, abra o Docker Desktop e verifique se a inicialização ocorre corretamente.
Após concluir o procedimento, valide se o WSL está instalado na versão esperada.
Abra o PowerShell e execute:
wsl --version
A saída esperada deve apresentar uma versão semelhante a:
WSL version: 2.5.10.0
Em seguida, abra o Docker Desktop e verifique se o serviço inicia normalmente, sem apresentar o erro relacionado ao WSL.
O erro Wsl/Service/RegisterDistro/CreateVm/0x800705b4 no Docker Desktop pode ocorrer em ambientes Windows Server com WSL 2 e virtualização aninhada, especialmente quando uma versão mais recente do WSL é instalada automaticamente junto ao Docker Desktop.
Para corrigir o problema, a solução validada é instalar manualmente o WSL 2.5.10 antes da instalação do Docker Desktop. Em ambientes onde o Docker Desktop já foi instalado, recomenda-se remover a versão atual do WSL, instalar a versão 2.5.10 e, em seguida, reinstalar o Docker Desktop.
Com esse procedimento, o Docker Desktop tende a inicializar corretamente, evitando a falha na criação da VM interna do WSL.