3
respostas

[Bug] Dockerhub não atualiza a imagem

eu utilizo o bitbucket pra fazer o commit, e o deploy é feito para o dockerhub e depois disso eu entro no servidor que esta hospedado na AWS e puxamos a imagem que está lá para dentro do servidor, mas ele não esta puxando a imagem latest do deploy. E a gente não esta conseguindo descobrir onde esta configurado a imagem que esta puxando mesmo eu ja tendo um dockerFile que esta configurado como lasted mas mesmo assim não esta vindo.

Alguém consegue me ajudar com isso?

3 respostas

Olá, Rafael.

Tudo bem?

Primeiro, é importante verificar se o processo de build e push da imagem para o Dockerhub está ocorrendo corretamente. Para isso, você pode verificar os logs do processo de CI/CD no Bitbucket.

Em seguida, certifique-se de que o servidor AWS está puxando a imagem correta. Você pode fazer isso executando o comando docker pull seguido do nome da imagem que você deseja puxar. Por exemplo:

docker pull meu_usuario/meu_repositorio:latest

O latest é uma tag padrão que é atribuída à imagem mais recente, mas ela não é atualizada automaticamente quando você faz push de uma nova imagem. Portanto, você precisa garantir que está fazendo push da imagem com a tag latest.

Outra possibilidade é que o servidor AWS esteja armazenando em cache a imagem antiga. Nesse caso, você pode tentar remover a imagem antiga antes de puxar a nova. Para isso, você pode usar os comandos docker rmi ou docker image rm. Por exemplo:

docker rmi meu_usuario/meu_repositorio:latest

Depois disso, você pode tentar puxar a imagem novamente.

Lembre-se que essas são apenas sugestões e podem não resolver completamente o problema, pois existem muitos fatores que podem estar causando esse comportamento, precisa ser testado.

Espero ter ajudado e bons estudos!

Opa mano, obrigado por responder!!!

Então, o id da imagem é um sha256, mas o id de Digests esta diferente do da imagem no bitbucket. A gente já testou bastante coisa, o deploy é feito, o build tbm, as atualizações da imagem não estão sendo feitas no site. Tem como a imagem antiga estar sobreponto a nova de alguma forma?

Obrigado pela ajuda.

Olá novamente, Rafael.

Se o ID do Digest da imagem no Dockerhub é diferente do ID da imagem no Bitbucket, isso indica que as imagens não são idênticas. Isso pode ocorrer por diversas razões, e pode, de fato, explicar por que as atualizações não estão sendo refletidas no servidor.

Aqui estão as sugestões resumidas para investigar e resolver o problema:

  1. Verifique se o processo de build no Bitbucket está gerando a imagem correta.
  2. Confira se o Dockerfile no Bitbucket está correto e configurado para a tag "latest".
  3. Ao realizar o push para o Dockerhub, assegure-se de usar a tag "latest".
  4. Certifique-se de que o servidor AWS não está utilizando um cache antigo da imagem.
  5. Verifique os logs do Docker no servidor AWS para obter informações detalhadas.
  6. Experimente fazer o pull manual da imagem no servidor AWS usando o comando docker pull.

Essas medidas ajudarão a garantir que a imagem mais recente seja corretamente construída, enviada para o Dockerhub e puxada no servidor AWS. Se persistirem problemas, revisar logs detalhados pode oferecer insights adicionais. Qualquer coisa manda aqui de novo.