Article image
William Silva
William Silva07/02/2025 06:58
Compartilhe

🚀 Guia Definitivo: Instalando Docker no WSL 2 sem Docker Desktop 🎯

  • #Docker
  • #DevOps
  • #Cloud

Se você deseja rodar o Docker no Windows sem precisar do Docker Desktop, este guia passo a passo ajudará você a instalar e configurar tudo corretamente no WSL 2 (Windows Subsystem for Linux). Vamos cobrir a instalação para Bash, Zsh e PowerShell! 💻🐳

1️⃣ Habilitando o WSL 2 🔥

Se ainda não tem o WSL 2 instalado, siga estes passos:

No PowerShell:

# Instalar o WSL
wsl --install

# Definir o WSL 2 como padrão
wsl --set-default-version 2

# Instalar uma distribuição Linux (ex: Ubuntu)
wsl --install -d Ubuntu

Ou instale via Microsoft Store.

Atualizar o Kernel do WSL 2:

Baixe e instale o pacote do kernel do WSL 2 através deste link: 🔗 Download do Kernel WSL 2

2️⃣ Instalando o Docker no WSL (Ubuntu/Debian) 🐳

Agora, vamos instalar o Docker diretamente na distribuição Linux dentro do WSL.

Atualizar pacotes do sistema:

sudo apt update && sudo apt upgrade -y

Instalar pacotes necessários:

sudo apt install -y ca-certificates curl gnupg lsb-release

Adicionar a chave GPG do Docker:

sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo tee /etc/apt/keyrings/docker.asc > /dev/null
sudo chmod a+r /etc/apt/keyrings/docker.asc

Adicionar o repositório oficial do Docker:

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Instalar o Docker:

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Adicionar seu usuário ao grupo Docker (para não precisar usar sudo):

sudo usermod -aG docker $USER
newgrp docker

Verificar a instalação do Docker:

docker --version

3️⃣ Executando o Docker no WSL 🚀

Por padrão, o serviço do Docker não inicia automaticamente dentro do WSL. Então, inicie-o manualmente:

No Bash/Zsh:

sudo service docker start

Verificar se o serviço está rodando:

sudo service docker status

Testar com um container simples:

docker run hello-world

4️⃣ Tornando o Docker Automático no WSL ⚡

Para evitar iniciar o Docker manualmente sempre que abrir o WSL, crie um script de inicialização:

Editar o perfil do shell (Bash/Zsh):

nano ~/.bashrc  # Ou nano ~/.zshrc se estiver usando Zsh

Adicionar a linha no final do arquivo:

sudo service docker start > /dev/null 2>&1

Salvar e fechar (CTRL + X, Y, Enter).

Recarregar o shell:

source ~/.bashrc  # Ou source ~/.zshrc para Zsh

Agora, o Docker será iniciado automaticamente sempre que abrir o WSL. 🎉

5️⃣ Rodando Docker via PowerShell ⚙️

Se quiser rodar comandos Docker diretamente do PowerShell sem precisar entrar no WSL, execute:

wsl -d Ubuntu -- docker ps

Criar um alias para facilitar o uso no PowerShell:

function docker { wsl -d Ubuntu -- docker $args }

Agora, você pode rodar docker ps no PowerShell como se fosse um comando nativo. 😎

🎯 Conclusão 🚀

Agora você tem o Docker rodando no WSL 2 sem precisar do Docker Desktop! Isso economiza recursos do sistema e mantém um ambiente mais leve e eficiente para desenvolvimento. 🎉🐳

📌 Se esse guia te ajudou, compartilhe com a comunidade! 💡

Compartilhe
Comentários (4)
William Silva
William Silva - 08/02/2025 06:57

Com certeza ainda podemos melhorar p deixar mais produtivo adicionando algumas ferramentas que são ativadas ou diretamente no linux ou wsl e também podem ser adicionados via oh-my-bash, oh-my-zsh e oh-my-posh, mas estarei fazendo em breve mais em alguns guias para ajudar mais a nossa comunidade 😉

JV

Jucelio Vieira - 07/02/2025 09:46

Muito bom

DIO Community
DIO Community - 07/02/2025 14:39

William, seu guia detalhado sobre a instalação do Docker no WSL 2 sem o Docker Desktop é um recurso valioso para desenvolvedores que buscam um ambiente mais leve e eficiente no Windows. A forma como você estruturou o passo a passo, desde a configuração do WSL 2 até a automação do Docker no shell, torna o processo acessível até mesmo para quem está começando no DevOps. A inclusão de comandos específicos para Bash, Zsh e PowerShell é um grande diferencial, garantindo que diferentes perfis de usuários possam configurar o ambiente de forma otimizada.

Na DIO, valorizamos soluções práticas que simplificam o fluxo de trabalho dos desenvolvedores, e otimizar o uso do Docker sem depender do Docker Desktop é um grande avanço para quem busca mais flexibilidade no desenvolvimento. Com essa abordagem, muitos profissionais conseguem reduzir o consumo de recursos do sistema e trabalhar de forma mais integrada com o Linux dentro do Windows. Para quem deseja avançar ainda mais, você acredita que essa configuração é suficiente para projetos de produção ou recomendaria ajustes adicionais para maior estabilidade e segurança?

Ricardo Rodrigues
Ricardo Rodrigues - 07/02/2025 08:44

Parabéns, realmente deu certo todos os passos, Eu estava com muito problema para subir o docker desktop, agora problema resolvido