Você pode enviar imagens do Docker para um projeto existente em um registro, como o Docker Hub ou o Harbour.
Pré-requisitos
Você precisa de uma imagem local que possa ser enviada por push para o registro. O comando a seguir extrai a imagem hello-world do Docker Hub. Você precisará de uma conta para extrair a imagem.
docker run hello-world
Resultado esperado:
Hello from Docker!
This message shows that your installation appears to be working correctly.
Verifique a imagem usando o comando
docker images
.
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest bf756fb1ae65 10 months ago 13.3kB
Procedimento
- Faça login em um Harbor Registry usando o vSphere Docker Credential Helper.
Observação: Embora o fornecimento de
--user nome de usuário
seja aceitável para o login, você deve usar a sintaxe UserPrincipalName (UPN) (
--user [email protected]
) para fazer login e use os comandos
docker push
.
- Marque a imagem que você deseja enviar por push para o projeto em Harbor Registry com o mesmo nome do namespace, no qual você deseja usá-la:
docker tag <image-name>[:TAG] <container-registry-IP>/<project-name>/<image-name>[:TAG]
Por exemplo:
docker tag hello-world:latest 10.179.145.77/tkgs-cluster-ns/hello-world:latest
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
10.179.145.77/tkg-cluster-ns/hello-world latest bf756fb1ae65 10 months ago 13.3kB
hello-world latest bf756fb1ae65 10 months ago 13.3kB
- Para enviar uma imagem para um projeto no Harbor, execute o seguinte comando:
Sintaxe:
docker push <container-registry-IP>/<namespace-name>/<image_name>
Por exemplo:
docker push 10.179.145.77/tkg-cluster-ns/hello-world:latest
Resultado esperado.
The push refers to repository [10.179.145.77/tkg-cluster-ns/hello-world]
9c27e219663c: Pushed
latest: digest: sha256:90659bf80b44ce6be8234e6ff90a1ac34acbeb826903b02cfa0da11c82cbc042 size: 525
- Verifique se a imagem agora está disponível no Harbour Registry incorporado.
- Faça login no Harbor Registry.
- Clique no link do projeto em .
- Selecione a guia Repositórios (Repositories).
- Você deverá ver que a imagem enviada por push para o registro está presente, no formato
namespace/image-name
, como tkg-cluster-ns/hello-world
.
- Selecione esta imagem e você verá a tag
latest
e outros metadados.
- Volte para a guia Repositórios (Repositories).
- Selecione o menu suspenso Push Image Docker Command. Os comandos para marcar e enviar imagens por push para este repositório são fornecidos a você.
Exemplo
Aqui está outro exemplo de push de imagem para um Harbor Registry:
docker tag busybox:latest <container-registry-IP>/<namespace-name>/busybox:latest
docker push <container-registry-IP>/busybox/busybox:latest