LABEL
A instrução LABEL em um Dockerfile é usada para adicionar metadados à imagem Docker na forma de pares chave-valor. Esses metadados podem incluir informações sobre o autor da imagem, a versão da aplicação, descrições, e outros dados relevantes. LABEL é útil para organizar, identificar e gerenciar imagens Docker, especialmente em ambientes complexos ou com várias imagens.
Sintaxe Básica
LABEL chave1=valor1 chave2=valor2 ...Exemplos de Uso
Adicionar Metadados Simples
FROM nginx:alpine
LABEL maintainer="nome@exemplo.com"
LABEL version="1.0"
LABEL description="Imagem Docker para um servidor web NGINX"Neste exemplo:
maintainerespecifica o autor ou mantenedor da imagem.versiondefine a versão da imagem ou da aplicação contida nela.descriptionfornece uma breve descrição da imagem.
Adicionar Vários Metadados em uma Única Instrução
Você pode definir várias etiquetas em uma única instrução LABEL:
FROM ubuntu:20.04
LABEL maintainer="nome@exemplo.com" \
version="1.0" \
description="Imagem de base para uma aplicação Python"Aqui, as chaves e valores são separados por espaço e a linha é dividida usando a barra invertida (\) para melhor legibilidade.
Usos Comuns de LABEL
LABELInformações do Mantenedor: Usar
LABELpara incluir o e-mail ou nome do mantenedor da imagem facilita a comunicação e a rastreabilidade.Versão da Imagem: Etiquetar a versão da imagem ou da aplicação ajuda a gerenciar diferentes versões em um registro de contêineres.
Licenciamento: Incluir informações de licenciamento com
LABELpode ser útil para imagens distribuídas publicamente.Documentação e Links: Você pode adicionar links para a documentação, repositórios Git, ou sites relacionados à aplicação contida na imagem.
Exemplos Avançados
Etiquetar com Informação de Build e Git
Neste exemplo:
build_datearmazena a data de construção da imagem.git_commitarmazena o hash da commit Git associado à versão do código que foi usada para construir a imagem.
Convenções e Boas Práticas
Consistência de Nomenclatura: Use uma convenção de nomenclatura consistente para as chaves, como usar nomes em minúsculas e separar palavras com underscores (
_) ou hifens (-).Chaves Prefixadas: Em ambientes corporativos ou para imagens distribuídas publicamente, é comum prefixar as chaves com o nome do domínio da organização para evitar colisões com outras chaves.
Evite Informações Sensíveis: Não armazene informações sensíveis como senhas, chaves de API ou segredos em labels, pois esses dados podem ser facilmente acessados ao inspecionar a imagem.
Como Verificar Labels em uma Imagem
Após construir a imagem, você pode visualizar os labels usando o comando docker inspect:
Este comando exibirá todas as labels associadas à imagem.
Resumo
LABELpermite adicionar metadados na forma de pares chave-valor à imagem Docker.É útil para descrever a imagem, fornecer informações sobre o autor, versionamento, links para documentação, e muito mais.
Boas práticas incluem usar uma nomenclatura consistente, evitar informações sensíveis, e prefixar chaves em ambientes corporativos.
Laboratório
Não entra como uma camada no filesystem da imagem. Ela é um metadado.
A LABEL não aparece no processo de construção da imagem.
Vários LABEL
Last updated