Launcher faz uma atualização no 'entrar no app'

Estou vendo um comportamento estranho que presumo ser um bug:

Em sistemas ARM, quando você executa ./launcher enter app, ele faz um pull_image. Suponho que seja devido a isto:

# 4. A imagem do docker do discourse é baixada
  3   test=`$docker_path images | awk '{print $1 ":" $2 }' | grep "$image"`
  2
  1   # suporte experimental para arm está em uma tag fixa, sempre puxe
227   if [ -z "$test" ] || [ $arm = true ]; then
  1     echo
  2     echo "AVISO: Estamos prestes a começar a baixar a imagem base do Discourse"
  3     echo "Este processo pode levar de alguns minutos a uma hora, dependendo da velocidade da sua rede"
  4     echo
  5     echo "Por favor, seja paciente"
  6     echo
  7
  8     pull_image
  9   fi

Há alguma razão para fazer um pull_image ao entrar no docker ou isso é um bug?

O Launcher sempre faz um pull porque as pessoas não o farão por conta própria.

Se você quiser evitar manter as coisas atualizadas e saber por que está fazendo isso, então você pode, em vez disso, fazer um

docker exec -it app bash

para entrar no contêiner

2 curtidas

Acho que há mais do que isso neste caso, porque no Intel o script verifica se uma nova imagem está disponível, mas no ARM ele sempre fará um pull. A razão dada é que o ARM sempre usa uma tag fixa. Por exemplo, hoje, vemos no script do launcher duas possibilidades:
image="discourse/base:2.0.20240825-0027"
ou
image="discourse/base:aarch64"
e como você vê, uma delas é mantida cuidadosamente à medida que novas imagens são aprovadas, e a outra é deixada na posição da tag.

As partes relevantes do script têm quase 3 anos. Pergunto-me, o ARM ainda é tão experimental que precisa desse tratamento diferente?

Como se vê, então, a imagem Intel que será puxada tem atualmente 15 dias e está na 8ª página das listagens de imagens base, enquanto a imagem ARM é a imagem mais recente e tem apenas 17 horas.

3 curtidas