Ao baixar uma imagem de um repositório de imagens auto-gerenciado, podem ocorrer falhas no download. As causas mais comuns incluem incompatibilidade de protocolos, erros na autenticação de certificados ou o uso de um servidor DNS personalizado. Este tópico descreve como baixar imagens de um repositório auto-gerenciado para criar um workload do ACS quando o repositório utiliza o protocolo HTTP, um certificado autoassinado ou um servidor DNS personalizado.
Contexto
Durante o download de uma imagem de um repositório auto-gerenciado, pode surgir um evento ErrImagePull, indicando que a operação falhou. Considerando que seu cluster ACS tenha conectividade de rede com o repositório de imagens, a tabela a seguir apresenta as causas frequentes e suas respectivas soluções.
|
Cenário |
Causa |
Solução |
|
O repositório de imagens auto-gerenciado utiliza o protocolo HTTP. |
Por padrão, o ACS baixa imagens via HTTPS. A incompatibilidade de protocolos resulta em falha no download da imagem. |
Configure o ACS para usar o protocolo HTTP na comunicação com o repositório de imagens. |
|
O repositório de imagens auto-gerenciado usa o protocolo HTTPS, mas com um certificado autoassinado. |
O download da imagem falha porque o ACS não consegue autenticar o certificado autoassinado. |
Configure o ACS para ignorar a autenticação de certificado. |
|
O domínio do repositório de imagens auto-gerenciado utiliza um servidor DNS personalizado. |
O ACS usa, por padrão, o DNS da Alibaba Cloud (100.100.2.136 e 100.100.2.138) para resolver o domínio do repositório de imagens. Se o registro de domínio do repositório existir apenas no seu servidor DNS personalizado, o download da imagem falhará. |
Configuração
Para baixar uma imagem de um repositório auto-gerenciado que utilize o protocolo HTTP ou um certificado autoassinado, é necessário configurar as seguintes anotações no Pod para evitar falhas no download.
|
Parâmetro |
Tipo |
Valor |
Descrição |
|
|
String |
|
Permite que o ACS baixe imagens via HTTP dos repositórios especificados, evitando falhas causadas por incompatibilidade de protocolos. |
|
|
String |
|
Habilita o ACS a ignorar a autenticação de certificado em repositórios que utilizam certificados autoassinados, prevenindo erros de autenticação durante o download. |
Caso precise baixar imagens para múltiplos containers a partir de diferentes repositórios, especifique vários endereços de repositório. Separe os endereços com vírgula (,), por exemplo: harbor***.pre.com,192.168.XX.XX.
Os passos a seguir mostram um exemplo para uma aplicação stateless:
Faça login no console do ACS. No painel de navegação à esquerda, clique em Clusters.
Na página Clusters, clique no nome do cluster desejado. No painel de navegação à esquerda, escolha Workloads > Deployments.
Na página Deployments, clique em Create with Image.
Na página Basic Information, insira as informações necessárias e clique em Next.
Na página Container, configure o container e clique em Next.
Na página Advanced, dentro da seção Pod Annotations, adicione as anotações necessárias. Por exemplo, adicione
registry.alibabacloud.com/plain-http-registryeregistry.alibabacloud.com/insecure-registrye, em seguida, clique em Create.