Agrega una etiqueta al contenedor Docker

Justo cuando estaba escribiendo una publicación preguntando cómo agregar una etiqueta a un contenedor de discourse, lo descubrí, así que pensé en compartirlo aquí para que la gente lo encuentre más fácil al buscar en Google.

Quería agregar una etiqueta a mi contenedor de discourse para que Watchtower no intentara actualizarlo cada vez.

Simplemente pasé por alto la ayuda que imprimió el script launcher y no noté --docker-args

Para agregar la etiqueta que quería, tuve que iniciarlo con lo siguiente:

./launcher start app --docker-args "--label com.centurylinklabs.watchtower.enable=false"

Había estado buscando en Google y revisando durante más de un día y no pude encontrar a nadie que quisiera hacer lo mismo, así que pensé en publicar esto y, con suerte, a alguien le resultará útil.

2 Me gusta

Para que el proceso sea más permanente, puedes agregar los argumentos de Docker al archivo app.yml como se describe en este ejemplo de Traefik:

1 me gusta

Saludos,

Actualmente estoy usando Watchtower para monitorear y actualizar mis contenedores Docker en Portainer. Sin embargo, quiero excluir el contenedor de Discourse de ser actualizado por Watchtower.
No soy un profesional de TI, así que me gustaría pedirte un breve tutorial sobre qué debo cambiar exactamente en mi archivo docker-compose.yml de Watchtower Monitor y otros cambios en la configuración de Discourse.
Agradezco cualquier ayuda.

Puede agregar una sección labels: a su app.yml para incluir etiquetas de docker en el contenedor de discourse cuando se inicia mediante el lanzador. Alternativamente, puede usar ./launcher start-command app para ver el comando de inicio de docker y luego usar lo que quiera para usar las mismas variables de entorno para iniciar el contenedor de Discourse.

No dice lo que Watchtower quiere o necesita para excluir a Discourser de Watchtower, así que no puedo decirle más.

Después de pensarlo, me di cuenta de que la imagen de Docker para Discourse no está etiquetada como latest. Si estoy pensando correctamente, Watchtower debería poder detectar una versión más reciente de la imagen de Docker de Discourse.

Por favor, corrígeme si me equivoco.

Para simplificarlo al máximo: añadí esto en app.yml

# ¿algún argumento adicional para Docker?
docker_args:
  - "--label com.centurylinklabs.watchtower.enable=false"

¡Gracias por tu documentación y ayuda!

Usar las etiquetas stanza aplica las etiquetas solo al contenedor en ejecución mientras que la forma docker-args incluye las etiquetas en los contenedores mientras se están iniciando (estoy bastante seguro).

¿Cómo se vería la estrofa completa (para copiar y pegar)?

Así que dejé que siguiera su curso. Watchtower actualizó todos los demás contenedores excepto Discourse. Aunque mostró un error, nada se rompió.
@ikarus84 ¿Has conseguido averiguar cómo configurarlo correctamente para evitar que ocurran estos errores?