Fundamentos de Imagens Docker
Compreendendo Imagens Docker
Imagens Docker são componentes fundamentais na tecnologia de contêineres, servindo como modelos de leitura-somente para a criação de contêineres. Estes pacotes leves e portáteis encapsulam o código da aplicação, o tempo de execução, as ferramentas do sistema, as bibliotecas e as definições necessárias para a execução do software.
Arquitetura e Camadas de Imagens
Imagens Docker consistem em múltiplas camadas de leitura-somente que representam alterações no sistema de arquivos:
graph TD
A[Camada Base] --> B[Camada da Aplicação]
B --> C[Camada de Configuração]
C --> D[Camada de Tempo de Execução]
| Tipo de Camada |
Descrição |
Finalidade |
| Camada Base |
Sistema de arquivos raiz |
Fornece a base do sistema operacional |
| Camada da Aplicação |
Pacotes de software |
Contém as dependências específicas da aplicação |
| Camada de Configuração |
Definições de ambiente |
Define as configurações de tempo de execução |
Criando Imagens Docker com Dockerfile
Exemplo de Dockerfile para uma aplicação web Python:
FROM ubuntu:22.04
RUN apt-get update && apt-get install -y python3 python3-pip
WORKDIR /app
COPY . /app
RUN pip3 install -r requirements.txt
EXPOSE 5000
CMD ["python3", "app.py"]
Comandos de Construção e Gestão de Imagens
Comandos chave de gestão de imagens Docker para Ubuntu:
## Construir uma imagem
docker build -t myapp:latest .
## Listar imagens locais
docker images
## Remover uma imagem
docker rmi myapp:latest
## Extrair imagem do Docker Hub
docker pull ubuntu:22.04
Armazenamento e Versão de Imagens
Imagens Docker utilizam identificadores únicos e suportam versões através de tags, permitindo a gestão e implantação precisas de imagens em diferentes ambientes.