Docker Construa um guia para iniciantes para a construção de imagens do Docker
- 3046
- 498
- Loren Botsford
Docker é uma ferramenta popular para embalagem e implantação de aplicativos em um ambiente isolado, e uma parte essencial do Docker Workflow está construindo imagens do Docker. Podemos construir nossas próprias imagens com a ajuda de imagens básicas e usá -las para criar contêineres. Também podemos puxar as imagens diretamente do Hub do Docker (https: // hub.Docker.com/) para nossa aplicação. Neste guia para iniciantes, explicaremos o que são imagens do Docker e como construí -las.
O que é uma imagem do Docker?
Uma imagem do docker é um pacote leve, independente e executável que inclui tudo o que é necessário para executar um software, incluindo o código, um tempo de execução, bibliotecas, variáveis de ambiente e arquivos de configuração.
As imagens do Docker são construídas sobre a tecnologia de contêiner de código aberto do Docker, que permite aos desenvolvedores empacotam e implantam aplicativos em um contêiner, facilitando a execução de aplicativos de forma consistente em diferentes ambientes.
Como construir uma imagem do Docker
Para construir uma imagem do Docker, você precisa criar um DockerFile, que é um arquivo de texto que contém um conjunto de instruções para criar a imagem. O DockerFile diz a Docker o que fazer ao criar a imagem, como quais arquivos incluir, quais bibliotecas instalar e quais comandos para executar.
Aqui está um exemplo do DockerFile que cria uma imagem simples do Python:
De Python: cópia 10-Slim . /app workdir /aplicativo execute pip install -r requisitos.txt cmd ["python", "principal.py "]12345678 | De Python: cópia 10-Slim . /AppworkDir /App Run Pip Install -R Requisitos.txt cmd ["python", "principal.py "] |
Neste exemplo:
- O DockerFile começa com uma instrução 'de', que especifica a imagem base a ser usada como ponto de partida para a nova imagem. Nesse caso, estamos usando o 'Python: 3.10-Slim ' imagem, que inclui uma versão mínima de Python 3.10.
- O 'CÓPIA DE' Instrução copia os arquivos do diretório atual (.) no '/aplicativo' diretório na imagem.
- O 'Workdir' instruções define o diretório de trabalho para '/aplicativo', para que quaisquer comandos subsequentes sejam executados a partir desse diretório.
- O 'CORRER' a instrução executa um comando para instalar as dependências python especificadas no 'Requisitos.TXT' arquivo.
- finalmente, o 'Cmd' a instrução especifica o comando para executar quando o contêiner é iniciado. Nesse caso, ele executa o 'principal.py ' Script Python.
Para construir a imagem, você pode usar o comando do Docker Build e especificar o 'Dockerfile' e um nome para a imagem:
Docker Build -t My-Python-App .
Isso vai construir a imagem e dar a tag 'My-Python-App'. Você pode executar a imagem usando o 'Docker Run'
comando:
Docker Run My-Python-App
Gerenciando as imagens do Docker
Depois de construir imagens do Docker, existem algumas tarefas que você pode precisar executar para gerenciá -las. Aqui estão algumas tarefas comuns para gerenciar imagens do Docker:
- Listando imagens:
Você pode usar o
'Imagens do Docker'
comando para listar todas as imagens em seu sistema. A saída incluirá o repositório, a etiqueta e o ID da imagem para cada imagem.Imagens do Docker
Id de imagem da tag repositório criado tamanho my-python-app mais fc6a1ed7b9fb 3 minutos atrás 967 MB Python 3.10-Slim BD4E6CDB1E80 7 dias atrás 142 MB - Removendo imagens:
Para remover uma imagem, você pode usar o
'Docker rmi'
Comando seguido pelo ID da imagem ou repositório e tag. Por exemplo, para remover a imagem My-Python-App, você pode usar o seguinte comando:Docker RMI My-Python-App
- Imagens de marcação:
Você pode usar tags para dar a suas imagens nomes descritivos e gerenciar facilmente várias versões. Para marcar uma imagem, você pode usar o
'tag do docker'
comando seguido pelo 'ID da imagem', o repositório e o nome da tag e o valor da tag. Por exemplo, para marcar o 'My-Python-App' imagem com o '1.0 ' Tag, você pode usar o seguinte comando:tag do docker fc6a1ed7b9fb my-python-app: 1.0
- Empurrando imagens para um registro:
Um registro é um local de armazenamento para imagens do Docker e você pode usar um registro para compartilhar suas imagens com outras pessoas ou implantá -las em um ambiente de produção. Para empurrar uma imagem para um registro, você primeiro precisa fazer login no registro usando o
'Docker Login'
comando e depois use o'Docker Push'
comando para fazer upload da imagem. Por exemplo, para empurrar o 'My-Python-App' Imagem para o registro do Docker Hub, você pode usar os seguintes comandos:Docker Login
Docker Push My-Python-App
- Puxando imagens de um registro:
Para puxar uma imagem de um registro, você pode usar o
'Docker Pull'
comando seguido pelo repositório e nome da tag. Por exemplo, para puxar a imagem do My-Python-App do registro do Docker Hub, você pode usar o seguinte comando:Docker Pull My-Python-App
Ao usar esses comandos, você pode gerenciar facilmente suas imagens do Docker e compartilhá -las com outras pessoas.
Melhores práticas para a construção de imagens do Docker
Existem algumas práticas recomendadas a serem lembradas ao criar imagens do Docker:
- Use uma imagem base mínima: Geralmente é uma boa idéia usar uma imagem base mínima, como alpina ou slim, para manter o tamanho da imagem o mais pequeno possível.
- Mantenha o Dockerfile simples: Tente manter o Dockerfile o mais simples possível, com cada instrução fazendo uma coisa. Isso facilitará a compreensão e a manutenção.
- Use construções de vários estágios: Se o seu aplicativo tiver várias etapas de construção, como construção e teste, você poderá usar construções de vários estágios para criar uma única imagem que inclua apenas os componentes necessários. Isso pode ajudar a reduzir o tamanho da imagem.
- Use cache: Docker possui um mecanismo de cache embutido que armazena os resultados intermediários de cada instrução no 'Dockerfile
- Use um .Arquivo Dockerignore: Semelhante a a .arquivo gitignore, um .O arquivo Dockerignore permite especificar padrões para arquivos e diretórios que devem ser excluídos ao criar a imagem. Isso pode ajudar a melhorar o desempenho da construção e manter o tamanho da imagem menor.
- Use variáveis de ambiente: Em vez de valores de codificação harding no Dockerfile, você pode usar variáveis de ambiente para tornar a imagem mais flexível e mais fácil de modificar.
- Mantenha a imagem atualizada: É importante manter a imagem base e quaisquer pacotes instalados atualizados para garantir que você tenha os mais recentes patches e recursos de segurança.
- Teste a imagem: Antes de implantar a imagem, é uma boa ideia testá -la para garantir que funcione como esperado. Você pode usar o Docker compor para configurar um ambiente de desenvolvimento local e executar a imagem em um contêiner.
Conclusão
Neste guia, cobrimos o básico da construção de imagens do Docker e fornecemos algumas práticas recomendadas a seguir. Seguindo essas diretrizes, você pode criar imagens eficientes e confiáveis do Docker que podem ser facilmente implantadas e mantidas.