{
  "id": 1004399,
  "title": "Docker - redes e volumes na prática",
  "url": "https://urgent.news/2026/08/15/docker-redes-e-volumes-na-pratica",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-08-15T09:30:21.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/apsis-cc/docker-redes-e-volumes-na-pratica-1n0b"
  },
  "original_language": "pt",
  "account": "Containers são unidades de aplicação que podem trabalhar em conjunto, mas a comunicação e persistência de dados dentro deles podem ser desafiadoras. Para resolver esses problemas, Docker oferece duas principais funcionalidades: redes (communication between containers) e volumes (persistência de dados).\n\nPor padrão, cada container possui seu próprio namespace de rede, isolado dos demais e do host. Isso significa que dois containers rodados independentemente não conseguem se encontrar automaticamente. Para permitir a comunicação entre containers, é necessário criar uma rede e conectar os containers desejados a ela. Isso é feito usando o comando `docker network create` para criar uma rede, e `docker run` com o parâmetro `--network` para conectar um container a uma rede específica.\n\nUma rede definida pelo usuário permite que os containers comuniquem-se usando nomes, em vez de IPs fixos. Isso é útil para aplicações containerizadas que utilizam strings de conexão, pois os desenvolvedores podem referenciar os serviços por nome em vez de IPs. Para gerenciar redes, é possível listar redes com `docker network ls`, visualizar detalhes de uma rede específica com `docker network inspect`, conectar ou desconectar containers de uma rede com `docker network connect` e `docker network disconnect`, respectivamente.\n\nOs volumes são usados para persistir dados além da vida de um container. Por padrão, tudo que um processo escreve dentro de um container é destruído quando o container é removido. Para resolver esse problema, é possível criar volumes usando o comando `docker volume create`. Os volumes existem fora do ciclo de vida de qualquer container específico, permitindo que os dados sejam preservados mesmo quando o container é removido. Para gerenciar volumes, é possível listar volumes com `docker volume ls`, inspecionar um volume específico com `docker volume inspect`, remover um volume com `docker volume rm` e remover todos os volumes não usados com `docker volume prune`.\n\nUma configuração típica envolve criar uma rede e um volume, e depois criar os containers da API e do banco de dados, conectando-os à rede e montando o volume para o container do banco de dados. Isso garante que a API e o banco de dados possam se comunicar e que os dados sejam persistentes, mesmo quando os containers são reinicializados.",
  "summary": "1. Retomando: de imagens bem construídas a containers que conversam entre si Os artigos anteriores desta série cobriram como criar imagens eficientes e rodar containers isolados. Mas uma aplicação real raramente é um único container: normalmente há uma API, um banco de dados, um cache, talvez uma fila de mensagens — cada um em seu próprio container, precisando se comunicar. E containers, por…",
  "key_points": [
    "Containers use networks to communicate, each with isolated namespace",
    "User-defined networks allow container communication via names",
    "Volumes persist data beyond container life, separate from containers"
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}