DEV Community

Cover image for #2 Docker - Cotainers
Bruno
Bruno

Posted on

#2 Docker - Cotainers

Um container é uma instância em execução de uma imagem.

Quando uma imagem é executada usando Docker, o Docker cria um container isolado onde a aplicação roda, uma mesma imagem pode gerar múltiplos containers simultaneamente.

Containers são ambientes isolados que não armazenam estado por padrão. Eles executam de forma independente do sistema operacional host e não possuem comunicação nativa direta com outros containers ou com o host sem configuração de rede explícita. Além disso, containers são efêmeros: quando o processo principal termina, o container é encerrado e qualquer estado interno pode ser perdido caso não haja mecanismos de persistência, como volumes.

Características importantes dos containers

  • Containers executam um processo principal (PID 1)
  • Compartilham o kernel do sistema operacional host
  • São efêmeros e descartáveis
  • Utilizam sistemas de arquivos em camadas
  • Possuem isolamento de recursos via namespaces e cgroups
  • Podem se comunicar através de redes Docker
  • Dados persistentes devem ser armazenados em volumes

Relação entre imagem e container

Imagem
↓ executando - Docker run
Container

Comandos Comuns

docker run → cria e inicia container
docker stop → para container
docker start → inicia container novamente
docker rm → remove container

docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND]
docker run -d -p 8080:80 --name meu-nginx nginx:1.27-alpine
Enter fullscreen mode Exit fullscreen mode

Top comments (0)