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?

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
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.