Autenticando seu Docker registry sem erro de certificado

Esta é uma dica rápida sem muitas explicações teóricas para resolver um problema chato que a autenticação de um repositório de imagens docker (registry) quando, ao fazer login você recebe uma mensagem de erro reclamando da assinatura do seu certificado como segue:

Este problema ocorre porque a sua máquina não consegue reconhecer todos os certificados envolvidos na cadeia de certificação. Talvez porque o certificado raiz da sua CA não está no pacote oficial da sua distribuição, porque ele é autoassinado ou outras possibilidades.

Este procedimento deve ser realizado na SUA MÁQUINA de onde você está tentando se conectar ao repositório, já que é ela quem está com dificuldades de validar a cadeia de certificados.

1 – A primeira coisa a fazer é salvar uma cópia do certificado.

Observe que eu não defini o “https”, mas obrigatoriamente eu defini a porta “5050”, que é a porta onde exponho o meu repositório.

Observe ainda que este comando apenas acessa o seu repositório via interface WEB, obtém a cadeia de certificados usada e a salva em uma pasta que será usada para atualização do seu sistema.

Desta forma, este comando salvará inclusive o seu certificado, que é desnecessário, mas como isso não causa nenhum problema você não precisa se preocupar com isso. Caso o seu TOC te incomode isso, você pode obter os certificados raiz de sua entidade certificadora de outra forma e salvá-la na mesma pasta indicada naquele comando.

2 – Agora atualize a lista de certificados na sua distribuição e reinicie o serviço de gerencia de contêineres

3. Faça uma nova tentativa de conexão com o seu registry

Se tudo deu certo, a autenticação deverá ser bem sucedida, como mostra acima. O Warning exibido foi devido a eu ter passado a senha direto na linha de comandos mas isso assunto para outro texto, e o principal que é autenticação, foi um sucesso.

A partir daí a sua máquina deverá acessar o repositório corretamente e inclusive outros serviços que dependem da cadeia de certificados poderá ser resolvida após este procedimento.

Caso não, verifique se você passou os certificados corretos no passo 1 e observe se o endereço e a porta estão corretos, embora o certificado não seja salvo com número de porta relacionado, isso é importante na hora de obter a cadeia correta principalmente se o servidor tiver mais de um serviço rodando em portas diferentes ou com nomes diferentes e até certificados diferentes.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.