Docker no Linux dentro do Windows 10 com WSL 2?
Finalmente consigo rodar Docker/Kubernets de maneira decente no no Windows, sem precisar ter dual boot ou um virtualbox :D com o WSL2, bem, pra mim funcionou e caso diga que ainda tenho maquina virtual, eu sei que tenho mas na minha experiência está sendo bem transparente que eu não sinto que tenho uma.
Vou te ensinar a instalar o WSL 2 enquanto ainda está em teste, mas lembre-se ,enquanto não for lançado em um update estável pela Microsoft você está assumindo o risco de pegar bugs :D
Você vai precisar da versão do Windows 10 no mínimo na versão: build 18917, para verificar você vai na tela de informações do sistema:
A minha já está acima desta versão, por isto já tenho WSL2, veja:
Primeiro se cadastre no programa Windows Insiders
Escolha o modo rápido para receber atualizações:
Abra a tela de verificação de atualizações, para não ficar esperando a agenda de atualização.
Clique no botão para verificar a atualização, e deixa rolar :D
Abra o power shell em modo administrador
Habilite o Windows Subsystem for Linux executando
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Habilite a plataforma de máquina virtual executando e reinicie :D
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
Vá na loja da microsoft
Instale o Linux, talvez o Ubuntu :D
Novamente no powershell execute, (esta linha só funciona se você tiver o WSL2 instalado, se tiver o WSL1 não vai funcionar)
wsl --set-version Ubuntu 2
Pronto, agora basta abrir o terminal do linux e instalar todo o docker/kubernets normalmente e rodar :D
sudo apt updatesudo apt install apt-transport-https ca-certificates curl software-properties-commonsudo apt install build-essentialcurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key addsudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"sudo apt update
sudo apt install docker-cesudo service docker startsudo docker run hello-world
Nas próximas execuções, talvez você tenha de executar novamente
sudo service docker start
Instale também o docker compose :D
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composesudo chmod +x /usr/local/bin/docker-composedocker-compose --version
Você pode configurar o VSCode pra usar o terminal WSL2 (terminal do ubuntu padrão) pra ser usando dentro dele :D
Funcionou ai pra você? Como está sendo a experiência?
Acessar portas do Linux rodando no WSL2 no Windows
Ae, deixa eu avisar, tem algo que ainda não funciona, se você executar uma imagem que abre um porta e você precisa acessar do windows, digamos pelo Chrome, não funciona :( o acesso precisa acontecer de dentro do seu Linux. Mas tem um contorno técnico :D.
- Opção numero 1 — Encontre o IP da sua máquina virtual e use o IP para acessar
ipconfig
- Opção numero 2: você pode instalar um service da comunidade, usando este service você vai abrir no navegador wsl.local:8080