Se você já ouviu alguém falar sobre Docker e ficou com cara de “ué”, relaxa! Você não está sozinho. Esse tal de container parece um conceito complicado, mas a verdade é que ele facilita muito a vida de quem desenvolve e implanta aplicações.
Antes de Docker, quando a gente queria rodar um sistema em outro ambiente, era um festival de erros:
🚨 “Mas funciona na minha máquina!”
🚨 “Faltou instalar a biblioteca X”
🚨 “O servidor usa uma versão diferente do banco!”
Com Docker, tudo isso fica mais simples porque ele empacota sua aplicação com tudo o que ela precisa para rodar, independente do sistema operacional ou das configurações da máquina.
Neste artigo, vamos entender de um jeito prático o que é um container, como o Docker funciona e como você pode começar a usá-lo agora mesmo. Preparado? Então, bora lá! 🚀
O que é um Container?
Pensa num container de transporte de carga. Ele pode carregar qualquer coisa—eletrônicos, roupas, comida—e ser transportado por caminhão, navio ou trem. O importante é que tudo lá dentro está protegido e organizado.
Na computação, um container faz algo parecido: ele embala uma aplicação com todas as suas dependências (bibliotecas, configurações, arquivos) e garante que ela vai rodar do mesmo jeito em qualquer lugar, sem depender do sistema operacional ou da máquina onde está sendo executada.
Agora, imagina que você tem um projeto em Delphi e precisa garantir que ele funcione em um servidor Linux, sem precisar instalar um monte de coisas manualmente. Com Docker, você coloca seu projeto dentro de um container e pronto! Ele roda sem dor de cabeça.
O que é o Docker?
Docker é a plataforma que cria e gerencia containers de forma simples e eficiente. Ele permite que você:
✅ Empacote sua aplicação e suas dependências em um ambiente isolado.
✅ Rode a mesma aplicação em qualquer lugar: no seu PC, em um servidor ou na nuvem.
✅ Evite o famoso “funciona na minha máquina, mas não no servidor”.
Docker funciona como uma “máquina virtual mais leve”, mas sem precisar simular um sistema operacional inteiro. Ele usa o sistema operacional do host e apenas isola os processos, o que o torna muito mais rápido e eficiente.
Agora que já entendemos o conceito, bora colocar a mão na massa!
🖥 Instalando o Docker no Windows
O Docker pode ser instalado no Windows por meio do Docker Desktop, que é a versão oficial da ferramenta para sistemas Windows e macOS. Ele inclui o Docker Engine e uma interface gráfica para gerenciar containers de forma intuitiva.
✅ Requisitos para instalação
Antes de instalar o Docker Desktop, certifique-se de que seu computador atende aos seguintes requisitos:
- Windows 10 (Pro, Enterprise ou Education) ou Windows 11 (versões Home exigem configurações extras)
- Processador 64 bits com suporte a virtualização (Hyper-V e WSL2)
- Pelo menos 4GB de RAM
- Virtualização habilitada na BIOS (veja abaixo como ativar se necessário)
🔹 Passo 1: Habilitar a Virtualização na BIOS
O Docker usa tecnologia de virtualização para rodar containers. Se sua máquina não tiver a virtualização ativada, será necessário habilitá-la na BIOS.
1️⃣ Reinicie seu computador e entre na BIOS
- Normalmente, você acessa a BIOS pressionando a tecla DEL, F2 ou F12 durante a inicialização.
2️⃣ Ative a Virtualização
- Procure uma opção chamada VT-x (Intel) ou AMD-V e ative-a.
- Em algumas BIOS, a opção aparece como Virtualization Technology ou SVM Mode.
3️⃣ Salve e saia da BIOS
- Pressione F10 para salvar e reiniciar o computador.
🔹 Passo 2: Baixar o Docker Desktop
Agora que a virtualização está ativada, vamos baixar o Docker Desktop.
1️⃣ Acesse o site oficial do Docker:
👉 Baixar Docker Desktop
2️⃣ Clique no botão Download for Windows.
3️⃣ Aguarde o download do instalador (Docker Desktop Installer.exe
).
🔹 Passo 3: Instalar o Docker Desktop
1️⃣ Execute o instalador (Docker Desktop Installer.exe
).
2️⃣ Na tela de instalação, marque as seguintes opções:
✅ Use WSL 2 instead of Hyper-V (recomendado, se disponível)
✅ Enable Windows Containers (se você quiser rodar containers Windows, opcional)
3️⃣ Clique em Install e aguarde o processo ser concluído.
4️⃣ Quando terminar, clique em Close & Restart para reiniciar o computador.
🔹 Passo 4: Configurar o Docker
1️⃣ Após reiniciar, abra o Docker Desktop.
- Pode levar alguns minutos para iniciar pela primeira vez.
2️⃣ Aceite os termos de uso e clique em Start.
3️⃣ Se aparecer uma mensagem sobre WSL 2, siga as instruções para instalar o WSL 2 Backend (Windows Subsystem for Linux).
4️⃣ Verifique se o Docker está rodando:
- No PowerShell, digite:
1 2 3 |
docker --version |
Passo 5: Testar o Docker no Windows
Agora, vamos rodar um container de teste para garantir que tudo está funcionando.
1️⃣ No PowerShell, execute:
1 2 3 |
docker run hello-world |
Se tudo estiver certo, você verá uma mensagem confirmando que o Docker está rodando corretamente.
2️⃣ Agora, vamos rodar um container real:
1 2 3 |
docker run -d -p 8080:80 nginx |
Isso inicia um servidor web Nginx na porta 8080.
3️⃣ Abra o navegador e acesse:
1 2 3 |
http://localhost:8080 |
Se a página padrão do Nginx aparecer, parabéns! Seu Docker está funcionando no Windows. 🚀
🚨 Possíveis Problemas e Soluções
1️⃣ Erro: “WSL 2 is not installed”
- Se aparecer essa mensagem, instale o WSL 2 manualmente:shCopiarEditar
1 2 3 |
wsl --install |
- Reinicie o computador e tente rodar o Docker novamente.
2️⃣ Erro: “Docker Desktop requires Windows 10 Pro or Enterprise”
- Se você usa Windows 10 Home, precisa ativar o WSL 2 para rodar o Docker corretamente.
3️⃣ Erro: “Docker daemon is not running”
- Verifique se o Docker está ativo no Gerenciador de Tarefas (CTRL + SHIFT + ESC).
- Caso contrário, abra o Docker Desktop e clique em Start Docker.
Agora que você instalou o Docker no Windows e rodou seu primeiro container, já pode começar a criar seus próprios ambientes isolados! 🚀
Se precisar de mais detalhes ou tiver dúvidas, só avisar! 😊
Linux (Ubuntu/Debian)
Se você é desenvolvedor e já passou pela frustração de configurar um ambiente que funciona na sua máquina, mas dá erro no servidor, então Docker pode ser a solução perfeita para você. Com ele, você pode criar containers, que são ambientes isolados onde sua aplicação roda de forma independente do sistema operacional ou configurações da máquina.
No Linux, o Docker brilha ainda mais, pois foi originalmente criado para esse sistema, garantindo uma instalação mais leve e eficiente. Usar Docker no Linux significa ter mais controle sobre os containers, maior compatibilidade com servidores e menos consumo de recursos comparado ao Windows.
Neste guia, vamos aprender como instalar o Docker no Linux (Ubuntu/Debian) e rodar nosso primeiro container de forma simples e rápida. Se você nunca usou Docker antes, fique tranquilo! Vamos abordar cada etapa de forma clara e prática. 🚀
Agora, bora colocar a mão na massa e instalar o Docker no seu Linux! 🐧
1️⃣ Atualize os pacotes:
1 2 3 |
sudo apt update && sudo apt upgrade -y |
2️⃣ Instale o Docker:
1 2 3 |
sudo apt install docker.io -y |
3️⃣ Verifique se foi instalado corretamente:
1 2 3 |
docker --version |
Live no YouTube
Para entender melhor como tudo funciona, assista nossa live sobre o assunnto.
🔥 Principais Comandos do Docker
Agora que você já instalou o Docker, é hora de aprender os comandos essenciais para gerenciar containers e imagens. Com esses comandos, você poderá visualizar containers em execução, iniciar e parar serviços, remover containers e limpar imagens que não são mais necessárias.
🛠 1. docker ps
– Listando Containers Ativos
O comando docker ps
exibe todos os containers que estão em execução no momento.
1 2 3 |
docker ps |
🔍 Saída do comando:
1 2 3 4 |
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d5a4c2b3f12e nginx "/docker-entrypoint.…" 2 minutes ago Up 2 minutes 0.0.0.0:8080->80/tcp my_nginx |
💡 Explicação das colunas:
- CONTAINER ID → Identificação única do container.
- IMAGE → Nome da imagem utilizada.
- COMMAND → Comando que está sendo executado dentro do container.
- CREATED → Tempo desde que o container foi criado.
- STATUS → Indica se o container está rodando e há quanto tempo.
- PORTS → Mostra o mapeamento de portas entre o container e o host.
- NAMES → Nome do container.
👀 Exibir Containers Parados
Por padrão, docker ps
mostra apenas os containers ativos. Para visualizar todos os containers, incluindo os parados, use:
1 2 3 |
docker ps -a |
▶ 2. docker start
– Iniciando um Container Parado
Se um container já foi criado mas está parado, podemos iniciá-lo novamente com:
1 2 3 |
docker start <ID ou NOME do container> |
Exemplo:
1 2 3 |
docker start d5a4c2b3f12e |
💡 Dica: Você pode iniciar vários containers de uma vez separando os IDs por espaço:
1 2 3 |
docker start container1 container2 container3 |
🛑 3. docker stop
– Parando um Container em Execução
Se quiser parar um container que está rodando, utilize o comando:
1 2 3 |
docker stop <ID ou NOME do container> |
Exemplo:
1 2 3 |
docker stop d5a4c2b3f12e |
💡 Dica: Assim como no start
, você pode parar vários containers ao mesmo tempo:
1 2 3 |
shCopiarEditar |
1 2 3 |
docker stop container1 container2 container3 |
Se o container não responder ao comando stop
, você pode forçar a parada com:
1 2 3 |
shCopiarEditar |
1 2 3 |
docker kill <ID ou NOME do container> |
A diferença entre stop
e kill
é que stop
dá tempo para o processo encerrar normalmente, enquanto kill
finaliza imediatamente.
📦 4. docker images
– Listando Imagens Locais
O comando docker images
exibe todas as imagens disponíveis na sua máquina.
1 2 3 |
docker images |
🔍 Saída do comando:
1 2 3 4 5 |
REPOSITORY TAG IMAGE ID CREATED SIZE nginx latest 605c77e624dd 2 days ago 142MB ubuntu 20.04 1318b700e415 1 week ago 73MB |
💡 Explicação das colunas:
- REPOSITORY → Nome da imagem.
- TAG → Versão da imagem (exemplo:
latest
,1.0
,20.04
). - IMAGE ID → Identificação única da imagem.
- CREATED → Data da criação da imagem.
- SIZE → Tamanho da imagem no disco.
Se quiser listar imagens com mais detalhes, use:
1 2 3 |
docker images --digests --no-trunc |
🗑 5. docker rm
– Removendo Containers
Se você não precisa mais de um container e quer removê-lo para liberar espaço, use:
1 2 3 |
docker rm <ID ou NOME do container> |
Exemplo:
1 2 3 |
docker rm d5a4c2b3f12e |
💡 Dicas úteis:
- Para remover vários containers ao mesmo tempo:
1 2 3 |
docker rm container1 container2 container3 |
Para remover todos os containers parados, sem precisar listar manualmente:
1 2 3 |
docker rm $(docker ps -aq) |
⚠ Atenção! Se o container ainda estiver rodando, você precisa pará-lo primeiro (docker stop <ID>
).
🔥 6. docker rmi
– Removendo Imagens
Para remover imagens Docker que não estão mais sendo usadas, utilize:
1 2 3 |
docker rmi <IMAGE ID ou REPOSITORY> |
Exemplo:
1 2 3 |
docker rmi nginx |
💡 Dicas úteis:
- Se a imagem estiver em uso por algum container, você precisará primeiro remover os containers relacionados (
docker rm
). - Para forçar a remoção de uma imagem, use:
1 2 3 |
docker rmi -f <IMAGE ID> |
Para remover todas as imagens não utilizadas, execute:
1 2 3 |
docker image prune -a |
🚀 Resumo dos Comandos
🚀 Resumo dos Comandos
Comando | Descrição |
---|---|
docker ps | Lista os containers em execução |
docker ps -a | Lista todos os containers (inclusive os parados) |
docker start <ID ou NOME> | Inicia um container parado |
docker stop <ID ou NOME> | Para um container em execução |
docker images | Lista todas as imagens locais |
docker rm <ID ou NOME> | Remove um container |
docker rmi <IMAGE ID> | Remove uma imagem |
Agora que você conhece os comandos básicos, já pode começar a gerenciar containers no Docker como um verdadeiro profissional! 🚀🐳
Participe da Comunidade no Telegram
🚀 Quer continuar essa discussão e trocar ideias com outros desenvolvedores? Junte-se à nossa comunidade no Telegram! Lá, você pode comentar sobre o que achou deste artigo, tirar suas dúvidas e compartilhar suas experiências com Delphi e ainda discutir ou tirar suas dúvidas sobre os mais variados temas em uma comunidade com mais de 1.000 desenvolvedores.
🔗 Clique aqui para entrar na comunidade
Te vejo lá!
🏁 Conclusão
Docker é uma ferramenta poderosa que facilita o desenvolvimento e a implantação de aplicações, eliminando problemas de compatibilidade entre ambientes. Ao aprender os comandos essenciais, você já pode gerenciar containers, iniciar e parar serviços, remover imagens desnecessárias e manter seu ambiente Docker organizado.
Se você está começando, a melhor maneira de aprender é praticando! Experimente rodar containers diferentes, criar seus próprios Dockerfiles e testar como sua aplicação se comporta dentro de um container. Com o tempo, você verá como Docker pode tornar seu fluxo de desenvolvimento mais ágil e eficiente.
Agora que você tem essa base, que tal explorar orquestração de containers com Docker Compose ou até mesmo dar os primeiros passos com Kubernetes? 🚀
Se precisar de mais ajuda, é só chamar! 😉