Antes de tudo, imagine que um programa (por exemplo, um site, um banco de dados ou um servidor) precisa de várias coisas para funcionar: versão certa, bibliotecas, configurações e dependências.
Um container é como uma “caixa pronta” que já vem com tudo o que aquele programa precisa para rodar. Assim, você não precisa instalar e configurar um monte de itens manualmente.
Além disso, o grande benefício é que o container roda igual em qualquer computador (desde que tenha Docker). Portanto, você evita o clássico: “na minha máquina funciona”.
Então, o que é Docker?
O Docker é a ferramenta mais famosa para criar, baixar e rodar containers.
Em outras palavras, o Docker faz três coisas principais:
- Baixa imagens prontas (pense como “modelos” de containers)
- Cria e roda containers a partir dessas imagens
- Gerencia containers (parar, iniciar, apagar, ver logs, etc.)
Assim, você consegue rodar um WordPress, um MySQL, um Redis, um Nginx e muitos outros, com poucos comandos.
Por que usar Docker?
Principalmente porque:
- É mais fácil do que instalar tudo na mão (na maioria dos casos)
- É rápido de repetir (você apaga e cria de novo quando quiser)
- Organiza o ambiente (cada projeto pode ter seu conjunto de containers)
- Ajuda a evitar conflitos (por exemplo, duas versões de PHP no mesmo Windows)
No entanto, vale lembrar: você precisa reservar um pouco de RAM e CPU para o Docker, porque ele roda um ambiente por trás.
Como instalar Docker no Windows 10 (passo a passo)
A forma mais comum é usando o Docker Desktop, e ele funciona melhor com WSL 2.
1) Verifique se seu Windows 10 suporta WSL 2
Em seguida, confira se você está no Windows 10 64‑bits e com versão relativamente atual. Se seu Windows estiver muito antigo, pode dar trabalho extra.
Dica: para ver a versão, aperte Windows + R, digite winver e confirme.
2) Instale o WSL 2 (recomendado)
Agora, abra o PowerShell como Administrador e rode:
PowerShell
wsl --install
Depois disso, reinicie o computador se ele pedir.
Em seguida, você pode instalar uma distribuição Linux pela Microsoft Store, como Ubuntu. Assim, o Docker vai usar o WSL 2 de forma mais leve.
3) Baixe e instale o Docker Desktop
Então:
- Baixe o Docker Desktop for Windows
- Instale normalmente (Next, Next, Finish)
- Durante a instalação, marque a opção de usar WSL 2 (quando aparecer)
Depois, abra o Docker Desktop e aguarde ele ficar “Running”.
4) Teste se está tudo certo
Agora, abra o PowerShell (normal, não precisa ser admin) e digite:
PowerShell
docker --version
E também:
PowerShell
docker compose version
Se aparecerem as versões, ótimo. Portanto, a instalação está funcionando.
Exemplo fácil: rodar WordPress + MySQL pronto (em container)
Aqui está um exemplo bem comum: subir um site WordPress e um banco MySQL com Docker Compose.
Assim, você não instala WordPress nem MySQL no Windows “de verdade”; você roda tudo em containers.
1) Crie uma pasta do projeto
Por exemplo, crie uma pasta chamada:
C:\projetos\meu-wordpress-docker
2) Crie o arquivo docker-compose.yml
Dentro dessa pasta, crie um arquivo chamado docker-compose.yml com este conteúdo:
YAML
services:
db:
image: mysql:8.0
container_name: wordpress_db
restart: always
environment:
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress123
MYSQL_ROOT_PASSWORD: root123
volumes:
- db_data:/var/lib/mysql
wordpress:
image: wordpress:latest
container_name: wordpress_app
restart: always
ports:
- "8080:80"
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress123
WORDPRESS_DB_NAME: wordpress
depends_on:
- db
volumes:
db_data:
O que isso significa (sem complicar)
- O serviço db é o MySQL (onde ficam os dados)
- O serviço wordpress é o site
- A porta 8080 do seu PC vai apontar para o WordPress
- O
volumesguarda os dados do MySQL para não perder tudo ao apagar o container
3) Suba os containers
Agora, abra o PowerShell dentro da pasta do projeto e rode:
PowerShell
docker compose up -d
Depois disso, espere alguns segundos.
4) Abra no navegador
Em seguida, acesse:
http://localhost:8080
Pronto: você verá a tela de instalação do WordPress. Então, é só escolher idioma, criar usuário e finalizar.
Como parar e apagar (quando você quiser)
Parar
PowerShell
docker compose stop
Subir de novo
PowerShell
docker compose up -d
Apagar containers (mantendo dados do banco, na maioria dos casos)
PowerShell
docker compose down
Apagar tudo incluindo o banco (cuidado!)
PowerShell
docker compose down -v
Dicas importantes para iniciantes
- Primeiro, não complique: copie e cole o
docker-compose.ymle teste. - Além disso, use portas fáceis, como 8080, 8081, etc.
- Se der erro, normalmente é porque:
- o Docker Desktop não está rodando
- a virtualização está desativada na BIOS
- o WSL 2 não foi configurado direito
Observacões importantes:
O WSL 2 (sigla para Windows Subsystem for Linux 2) é um recurso do Windows que permite rodar um Linux dentro do Windows, de forma bem integrada.
Em outras palavras, em vez de você instalar um Linux “separado” (como se fosse outro computador), o Windows cria um ambiente Linux leve que roda junto com ele.
Para que serve o WSL 2 (na prática)?
Ele serve principalmente para:
- Rodar ferramentas feitas para Linux (muito comuns em programação e servidores)
- Deixar o Docker no Windows mais rápido e estável, porque o Docker funciona “naturalmente” no Linux
Portanto, quando você instala o Docker Desktop no Windows 10, ele normalmente usa o WSL 2 como base para rodar os containers de um jeito melhor.
WSL 2 vs WSL 1 (bem simples)
- WSL 1: era uma “camada de compatibilidade” para rodar comandos Linux.
- WSL 2: roda um Linux de verdade, usando uma tecnologia de virtualização leve.
Assim, o WSL 2 costuma ter mais compatibilidade e melhor desempenho em várias situações (especialmente com Docker).
Isso é a mesma coisa que uma máquina virtual?
É parecido, mas mais simples:
- Uma VM tradicional (VirtualBox/VMware) é mais “pesada” e separada.
- Já o WSL 2 é mais integrado ao Windows e costuma ser mais prático para uso diário.
Preciso instalar o Ubuntu para usar WSL 2?
Geralmente, sim: você instala uma distribuição (como Ubuntu) pela Microsoft Store para ter um “terminal Linux” pronto.
No entanto, mesmo que você não abra o Ubuntu nunca, o Docker Desktop pode usar o WSL 2 por trás para rodar os containers.