Extraindo Imagens Usando a CLI do Docker

Descubra como extrair imagens do Container Registry usando a CLI do Docker.

Você usa a CLI do Docker para extrair imagens do Oracle Cloud Infrastructure Registry (também conhecido como Registro de Contêiner).

Suas permissões controlam as imagens que você pode extrair do Container Registry (consulte Políticas para Controlar o Acesso ao Repositório). Você pode extrair imagens dos repositórios que criou, dos repositórios públicos e dos repositórios que os grupos aos quais você pertence receberam acesso das políticas de identidade. Se você pertencer ao grupo Administradores, poderá extrair imagens de qualquer repositório na tenancy.

Observação

Container Registry é um registro compatível com a Open Container Initiative. Como resultado, você pode armazenar qualquer artefato que esteja em conformidade com as especificações da Open Container Initiative, como imagens do Docker, listas de manifestos (às vezes conhecidas como imagens de várias arquiteturas) e gráficos Helm. As instruções deste tópico pressupõem que você esteja armazenando imagens do Docker e usando a CLI do Docker.

Para extrair imagens do Container Registry usando a CLI do Docker:

  1. Se você já tiver um token de autenticação, vá para a próxima etapa. Caso contrário:

    1. No canto superior direito da Console, abra o menu Perfil Ícone do menu Perfil e selecione Configurações do usuário (ou Meu Perfil ou o nome da sua conta) para exibir os detalhes.

    2. Na página Tokens de Autenticação, selecione Gerar Token.

    3. Digite uma descrição amigável para o token de autenticação. Evite digitar informações confidenciais.

    4. Selecione Gerar Token. O novo token de autenticação é exibido.

    5. Copie o token de autenticação imediatamente para um local seguro de onde poderá recuperá-lo posteriormente, porque você não o verá novamente na Console.

    6. Feche a caixa de diálogo Gerar Token.

  2. Em uma janela de terminal na máquina cliente que executa o Docker, faça log-in no Container Registry digitando docker login <registry-domain>, em que <registry-domain> inclui uma chave de região ou um identificador de região para a região do Container Registry que você está usando. Por exemplo, docker login ocir.us-ashburn-1.oci.oraclecloud.com. Consulte Disponibilidade por Região.

  3. Quando solicitado a informar um nome de usuário, informe seu nome de usuário no formato <tenancy-namespace>/<username>, em que <tenancy-namespace> corresponde à string de namespace do serviço Object Storage gerada automaticamente de sua tenancy (conforme mostrado na página Informações da Tenancy). Por exemplo, ansh81vru1zp/jdoe@acme.com.

    Se a sua tenancy for federada com oOracle Identity Cloud Service, use o formato <tenancy-namespace>/<domain-name>/<username>. Para usuários federados, o <domain-name>/<username> é exibido no menu Perfil Ícone do menu Perfil na Console. Por exemplo, se a string de namespace da sua tenancy for ansh81vru1zp e a sua tenancy for federada com o Oracle Identity Cloud Service e o seu nome de usuário for jdoe@acme.com, digite ansh81vru1zp/oracleidentitycloudservice/jdoe@acme.com.

  4. Quando for solicitada uma senha, informe o token de autenticação copiado anteriormente.

  5. Extraia a imagem do Docker do Container Registry para a máquina cliente informando:

    docker pull <registry-domain>/<tenancy-namespace>/<repo-name>:<version>

    em que:

    • <registry-domain> inclui a chave da região ou o identificador da região do Container Registry que você está usando. Por exemplo, ocir.us-ashburn-1.oci.oraclecloud.com. Consulte domínio de registro.

    • <tenancy-namespace> corresponde à string de namespace do serviço Object Storage gerada automaticamente da tenancy que possui o repositório do qual você deseja extrair a imagem (conforme mostrado na página Informações da Tenancy). Por exemplo, o namespace da tenancy acme-dev pode ser ansh81vru1zp. Observe que, para algumas tenancies mais antigas, a string do namespace pode ser igual ao nome da tenancy em todas as letras minúsculas (por exemplo, acme-dev). Observe também que seu usuário deve ter acesso à tenancy.

    • <repo-name> corresponde ao nome de um repositório do qual você deseja extrair a imagem (por exemplo, project01/acme-web-app). Observe que seu usuário deve ter acesso ao repositório (consulte Repositórios).

    • <version> é o identificador de versão da imagem que você deseja extrair do Container Registry (por exemplo, v2.0.test).

    Por exemplo:

    docker pull ocir.us-ashburn-1.oci.oraclecloud.com/ansh81vru1zp/project01/acme-web-app:v2.0.test

    Observe que se você não especificar uma <version> no comando docker pull, o Docker extrairá a imagem que tem o identificador de versão latest.

  6. Verifique se a imagem foi extraída do Container Registry digitando docker images e verificando se a lista de imagens na máquina cliente agora inclui a imagem que você acabou de extrair.

    Por exemplo:

    
    $ docker images
    REPOSITORY                                                                TAG                   IMAGE ID      CREATED       SIZE
    ocir.us-ashburn-1.oci.oraclecloud.com/ansh81vru1zp/project01/acme-web-app v2.0.test             8e0506e14874  1 minute ago  162.6 MB
    acme-web-app                                                              latest                8e0506e14874  2 hours ago   162.6 MB
    acme-web-app                                                              v1.0                  7d9495d03763  2 hours ago   162.6 MB
    <none>                                                                    <none>                6ebd328f833d  5 hours ago   162.6 MB
    hello-world                                                               latest                80b84820d442  5 weeks ago   890 B