¿Qué comando actualiza solo la imagen de Docker?

¿Qué comando se utiliza solo para actualizar la imagen de Docker?

/var/discourse# ./launcher -h
Usage: launcher COMMAND CONFIG [--skip-prereqs] [--docker-args STRING]
Commands:
    start:       Start/initialize a container
    stop:        Stop a running container
    restart:     Restart a container
    destroy:     Stop and remove a container
    enter:       Open a shell to run commands inside the container
    logs:        View the Docker logs for a container
    bootstrap:   Bootstrap a container for the config based on a template
    run:         Run the given command with the config in the context of the last bootstrapped image
    rebuild:     Rebuild a container (destroy old, bootstrap, start new)
    cleanup:     Remove all containers that have stopped for > 24 hours
    start-cmd:   Generate docker command used to start container

Options:
    --skip-prereqs             Don't check launcher prerequisites
    --docker-args              Extra arguments to pass when running docker
    --skip-mac-address         Don't assign a mac address
    --run-image                Override the image used for running the container

Mi escenario es el siguiente:
Actualmente, durante la compilación, si es necesario actualizar la imagen de Docker y la red del servidor es muy deficiente, el proceso se queda atascado en la actualización de la imagen durante mucho tiempo. Me gustaría que existiera un comando específico para actualizar la imagen de Docker, de modo que pueda actualizarla por adelantado de forma independiente y luego compilar el código con tranquilidad. Por ejemplo:

./launcher pull-docker

Sé que puedo crear manualmente una versión funcional, pero aún así espero que el equipo oficial lance una opción oficial.

hmmm, la única forma que conozco es actualizar primero el script del lanzador:

cd /var/discourse
git pull

luego encontrar la etiqueta de imagen predeterminada que está usando el lanzador:

grep -m1 '^image=' launcher

la salida debería verse así:

image="discourse/base:2.0.20260915-0028"

luego ejecutar:

docker pull discourse/base:2.0.20260915-0028

entonces, cuando ejecutes ./launcher rebuild app, debería omitir la descarga, creo.

debería decir Status: Image is up to date for discourse/base:2.0.20260915-0028 cuando ejecutes la reconstrucción…

Gracias por responder. Actualmente actualizo de una manera similar, aunque es bastante tediosa. Quisiera escribir un script de automatización, pero me preocupa que pueda no ser compatible tras las próximas actualizaciones oficiales.

Puedes hacerlo con un script bash ejecutable e incluso usar una tarea cron para automatizarlo. No estoy seguro de por qué sería incompatible en algún momento cercano.

Quiero decir que podría no ser compatible en el futuro, y tal vez tenga que revisar este guion cada vez, lo cual sin duda aumenta la carga de trabajo. Solo estoy asumiendo el peor de los casos :joy:. Por supuesto, para resolver el problema, primero hay que actuar y ajustar sobre la marcha.