Introdução
O Docker é uma ferramenta poderosa para construir, empacotar e implantar aplicações de forma consistente e repetível. Um aspecto crucial ao trabalhar com o Docker é compreender como etiquetar adequadamente as suas imagens Docker antes de as empurrar para um registo de contentores. Este tutorial irá guiá-lo através do processo de etiquetagem de uma imagem Docker e prepará-la para a implantação.
Compreendendo Etiquetas de Imagens Docker
Imagens Docker são os blocos de construção de aplicações em contentores. Cada imagem Docker tem um identificador único, conhecido como etiqueta da imagem, que ajuda a diferenciar entre diferentes versões ou variações da mesma imagem. Compreender o conceito de etiquetas de imagens Docker é crucial ao trabalhar com Docker, pois permite gerir e controlar as versões das suas aplicações.
O que são Etiquetas de Imagens Docker?
Etiquetas de imagens Docker são cadeias alfanuméricas usadas para identificar uma versão específica de uma imagem Docker. Normalmente, são anexadas ao final do nome da imagem, separadas por dois pontos (:). Por exemplo, a imagem ubuntu:22.04 tem a etiqueta 22.04, que indica que é a versão da imagem Ubuntu baseada em Ubuntu 22.04.
Etiquetas de imagens Docker podem ser usadas para:
- Especificar a versão ou variante de uma imagem que pretende utilizar
- Diferenciar entre diferentes compilações ou versões da mesma imagem
- Gerir o ciclo de vida das suas imagens Docker
Anatomia de uma Etiqueta de Imagem Docker
Uma etiqueta de imagem Docker normalmente consiste nos seguintes componentes:
- Nome do Repositório: O nome do repositório Docker onde a imagem é armazenada, como
ubuntuounginx. - Etiqueta: A versão ou variante específica da imagem, como
22.04oulatest.
Por exemplo, a imagem labex/myapp:v1.0 tem os seguintes componentes:
- Nome do Repositório:
labex/myapp - Etiqueta:
v1.0
A etiqueta v1.0 representa a versão específica da imagem myapp fornecida pelo repositório labex.
Etiqueta Padrão: latest
Se não especificar uma etiqueta ao puxar ou executar uma imagem Docker, o Docker utilizará automaticamente a etiqueta latest. A etiqueta latest é uma etiqueta especial que frequentemente representa a versão mais recente de uma imagem. No entanto, é importante notar que a etiqueta latest pode ser enganadora, pois não significa necessariamente que a imagem seja a versão mais atualizada ou estável. Recomenda-se geralmente utilizar etiquetas específicas e versionadas em vez de depender da etiqueta latest.
graph TD
A[Imagem Docker] --> B[Nome do Repositório]
B --> C[Etiqueta]
C --> D[ubuntu:22.04]
C --> E[labex/myapp:v1.0]
C --> F[nginx:latest]
Etiquetagem de uma Imagem Docker
Etiquetagem de uma imagem Docker é um processo direto que permite gerir e organizar as suas imagens Docker de forma eficaz. Atribuindo etiquetas significativas às suas imagens, pode identificar e acompanhar facilmente diferentes versões ou variações das suas aplicações.
Etiquetagem de uma Imagem Durante a Construção
A forma mais comum de etiquetar uma imagem Docker é durante o processo de construção. Pode utilizar a opção -t ou --tag com o comando docker build para especificar a etiqueta da imagem.
docker build -t labex/myapp:v1.0 .
Neste exemplo, a imagem será etiquetada como labex/myapp:v1.0.
Etiquetagem de uma Imagem Existente
Também pode etiquetar uma imagem Docker existente usando o comando docker tag. Isto é útil quando pretende criar uma nova etiqueta para uma imagem que já foi construída.
docker pull ubuntu:22.04
docker tag ubuntu:22.04 labex/ubuntu:latest
Neste exemplo, primeiro puxamos a imagem ubuntu:22.04 e, em seguida, criamos uma nova etiqueta labex/ubuntu:latest que aponta para a mesma imagem.
Convenções de Etiquetagem
Quando etiqueta as suas imagens Docker, recomenda-se seguir algumas boas práticas e convenções:
- Utilizar Semântica de Versão: Utilize um esquema de versão como
major.minor.patch(ex.:1.2.3) para indicar claramente a versão da sua aplicação. - Diferenciar Versões: Utilize etiquetas únicas para cada versão da sua imagem para evitar confusões e garantir que está a utilizar a versão correta.
- Utilizar Etiquetas Significativas: Escolha etiquetas descritivas e significativas, como a versão da aplicação, a versão da imagem base ou a data de construção.
- Evitar a Etiqueta
latest: Evite utilizar a etiquetalatestpara implantações de produção, pois pode ser ambígua e dificultar o acompanhamento da versão específica da sua aplicação.
Empurrando uma Imagem Docker Etiquetada
Depois de etiquetar a sua imagem Docker, o próximo passo é empurrá-la para um registo Docker, como o registo privado do LabEx ou um registo público como o Docker Hub. Empurrar a sua imagem para um registo torna-a acessível a outros utilizadores ou sistemas, permitindo-lhes descarregar e utilizar a sua aplicação.
Preparando-se para Empurrar uma Imagem
Antes de poder empurrar a sua imagem Docker, precisa de garantir que tem as credenciais necessárias para aceder ao registo de destino. Isto normalmente envolve efetuar login no registo usando o comando docker login.
docker login labex.io
Neste exemplo, estamos a efetuar login no registo privado do LabEx em labex.io.
Empurrando a Imagem Etiquetada
Depois de efetuar login no registo, pode empurrar a sua imagem Docker etiquetada usando o comando docker push.
docker push labex/myapp:v1.0
Este comando empurrará a imagem labex/myapp:v1.0 para o registo privado do LabEx.
Verificando a Imagem Empurrada
Após empurrar a sua imagem, pode verificar se foi carregada com sucesso para o registo, verificando a interface web do registo ou usando o comando docker images.
docker images
Isto irá mostrar uma lista de todas as imagens Docker no seu sistema, incluindo a que acabou de empurrar.
Empurrando para um Registo Público
Se estiver a utilizar um registo público como o Docker Hub, o processo é semelhante, mas precisará de utilizar o URL do registo correto e as suas credenciais do Docker Hub.
docker login
docker push username/myapp:v1.0
Neste exemplo, username é o seu nome de utilizador do Docker Hub e myapp:v1.0 é a imagem etiquetada que pretende empurrar.
Ao empurrar as suas imagens Docker etiquetadas para um registo, pode torná-las disponíveis para outros utilizadores ou sistemas, permitindo-lhes descarregar e utilizar facilmente as suas aplicações.
Resumo
Neste tutorial, aprendeu a importância de etiquetar imagens Docker e os passos para etiquetar e empurrar as suas imagens Docker para um registo. Compreendendo o processo de etiquetagem, pode garantir que as suas imagens são devidamente identificadas e facilmente geridas, tornando as suas implantações baseadas em contentores mais eficientes e fiáveis.



