Por que não é possível enviar imagens por push de fora da rede VPC para o registro interno?

Provedor de infraestrutura e versões aplicáveis:

  • VPC
  • Red Hat OpenShift 4.4 ou mais recente

Quando você tenta enviar por push as imagens de contêiner para o registro de imagem de contêiner do Red Hat OpenShift, o push falha com uma mensagem semelhante à seguinte. 

dial tcp 161.26.0.28:443: connect: network is unreachable

Os clusters do Red Hat OpenShift on IBM Cloud que são executados no provedor de infraestrutura do VPC usam o IBM Cloud Object Storage para armazenar dados do registro de contêiner interno do cluster. Por padrão, o acesso ao terminal do Object Storage está disponível somente de dentro de uma instância de VPC. Portanto, o envio por push da imagem falhará quando um processo externo, como uma máquina local ou um pipeline CI/CD, tentar enviar por push as imagens de contêiner para o registro interno de fora do VPC.

Modifique o recurso customizado do operador de registro de imagem interno para o tráfego de imagem de contêiner de proxy por meio dos pods de registro interno para os terminais diretos do Object Storage. 

Execute o comando a seguir para corrigir o recurso configs.imageregistry.operator.openshift.io/cluster para configurar a propriedade disableRedirect como true.

oc patch configs.imageregistry.operator.openshift.io/cluster --patch '{"spec":{"disableRedirect":true}}' --type=merge