Guia rápido do WSL2 + Docker
WSL 2 – Windows Subsystem for Linux 2
A principal proposta de valor do WSL é que você pode ter Linux E Windows. Como desenvolvedor, isso é bastante atraente,
pois você pode desenvolver para ambas as plataformas em ambas as plataformas, mas com apenas uma máquina e sem ter que mudar constantemente de SO.
• Linux funcionando dentro do Windows como subsistema; • Funciona em cima do Virtual Machine Platform; • Permite o controle do sistema através de um terminal; • Execução do kernel completo do Linux; • Compartilhamento completa de chamada do sistema; • Melhor desempenho para acesso aos arquivos dentro do Linux.
Requerimentos Mínimos:
• Windows 10 Home ou Professional; • Atualização 20.04.; • 4GB de RAM; • Virtual Machine Platform; • Docker Desktop >= 2.3; • Windows Terminal.
Podemos dizer que o WSL 2 tem acesso quase que total ao recursos de sua máquina. Ele tem acesso por padrão:
• A todo disco rígido. • A usar completamente os recursos de processamento. • A usar 80% da memória RAM disponível. • A usar 25% da memória disponível para SWAP.
Instalação do WSL 2 Pode ser que seu Windows 10 já seja igual ou superior a 20.04, verifique isto acessando o menu de notificações perto do relógio > Todas as configurações > Sistema > Sobre.
Etapas de instalação manual Etapa 1 – Habilitar o Subsistema do Windows para Linux
Execute os seguintes comandos no PowerShell em modo administrador:
$ dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart $ dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Abra o PowerShell e digite o comando $ wsl, se não funcionar reinicie sua máquina. Etapa 2 – Baixar o pacote de atualização do kernel do Linux https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi Etapa 3 – Definir o WSL 2 como a sua versão padrão A versão 1 do WSL é a padrão no momento, atribua a versão default para a versão 2, assim todas as distribuições Linux instaladas serão já por default da versão 2. Execute o comando com o PowerShell: $ wsl --set-default-version 2
Etapa 4 – Instalar a distribuição do Linux de sua escolha Escolha sua distribuição Linux preferida no aplicativo Windows Store, sugerimos o Ubuntu por ser uma distribuição popular e que já vem com várias ferramentas instaladas por padrão.
Na página da distribuição, selecione "Obter".
Etapa 5 – Criando usuário root da instância WSL
Ao iniciar o Linux instalado, você deverá criar um nome de usuário que poderá ser o mesmo da sua máquina e uma senha, este será o usuário root da sua instância WSL.
Parabéns, seu WSL2 já está funcionando:
Etapa 5 – Configurações Opcionais Desinstale o Hyper-V Agora que temos o WSL 2 não precisamos mais do Hyper-V, desabilite-o em Painel de Controle > Programas e Recursos (se você tiver instalado o Hyper-V). Alterar a versão do WSL 1 de uma distribuição para a versão 2 Se você já tiver o WSL 1 na máquina e acabou de instalar a versão 2, pode-se converter sua distribuição Linux WSL 1 para WSL 2, execute o comando com o PowerShell: $ wsl --set-version <distribution name> 2
Etapa 6 – Instalar o Terminal do Windows
O Windows Terminal construído pela própria Microsoft que permite rodar terminais em abas, alterar cores e temas, configurar atalhos e muito mais.
Instale-o pelo Windows Store e use estas configurações padrões para habilitar WSL 2, Git Bash e o tema drácula e alguns atalhos.
https://github.com/codeedu/wsl2-docker-quickstart/blob/master/windows-terminal-settings.json
Para sobrescrever as configurações clique a seta para baixo do lado das abas e em configurações, abrirá as configurações do Windows Terminal, apenas cole o conteúdo do arquivo JSON e salve.
Etapa 7 – Definindo Recursos da Máquina Crie um arquivo chamado .wslconfig na raiz da sua pasta de usuário (C:\Users\<seu_usuario>) e defina estas configurações:
[wsl2] options=metadata,umask=22,fmask=11 memory=8GB processors=4 swap=2GB
Para aplicar estas configurações é necessário reiniciar as distribuições Linux, então sugerimos executar no PowerShell o comando:
$ wsl –shutdown
Este comando vai desligar todas as instâncias WSL 2 ativas e basta abrir o terminal novamente para usa-la já com as novas configurações.