La reconstrucción actual de la aplicación web falla con este error:
root@docker2:/var/discourse# ./launcher stop web_only && ./launcher rebuild data && ./launcher rebuild web_only
Se detectó la arquitectura x86_64.
+ /usr/bin/docker stop -t 600 web_only
web_only
Se detectó la arquitectura x86_64.
Asegurando que el lanzador esté actualizado
El lanzador está actualizado
Deteniendo el contenedor antiguo
+ /usr/bin/docker stop -t 600 data
data
./launcher: Línea 334: Advertencia: Sustitución de comando: se ignoró el byte nulo en la entrada.
2.0.20240825-0027: Extrayendo de discourse/base
Digest: sha256:6de68cb49198b5281f79ed9401b3fe818c854d220dcf0238549fe2f2adb19146
Estado: La imagen está actualizada para discourse/base:2.0.20240825-0027
docker.io/discourse/base:2.0.20240825-0027
/usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2024-10-04T15:54:02.326983 #1] INFO -- : Leyendo desde stdin
/usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/cli.rb:54:in `split': secuencia de bytes inválida en UTF-8 (ArgumentError)
split = conf.split("_FILE_SEPERATOR_")
^^^^^^^^^^^^^^^^^^
from /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/cli.rb:54:in `run'
from /usr/local/bin/pups:9:in `<top (required)>'
from /usr/local/bin/pups:25:in `load'
from /usr/local/bin/pups:25:in `<main>'
falló el arranque con código de salida 1
** FALLÓ EL ARRANQUE ** por favor, desplázate hacia arriba y busca mensajes de error anteriores, puede haber más de uno.
¿Alguna idea de cómo solucionar esto? Mi foro está actualmente no disponible después de este redespĺiegue
En este caso, web_only y data son contenedores separados y el inicio del contenedor web_only falla con
oot@docker2:/var/discourse# ./launcher start web_only
Se detectó la arquitectura x86_64.
iniciando contenedor existente
+ /usr/bin/docker start web_only
Respuesta de error del demonio: No se puede enlazar a un contenedor no en ejecución: /data COMO /web_only/data
Error: no se pudieron iniciar los contenedores: web_only
Quizás necesite iniciar manualmente a través de docker en este caso, ya que la base de datos está externa en otra máquina, vea este código en el yaml de web_only:
## conectar a la base de datos central de postgres
DISCOURSE_DB_SOCKET: ''
DISCOURSE_DB_USERNAME: discourse
DISCOURSE_DB_PASSWORD: xxxxxxxxxx
DISCOURSE_DB_HOST: 10.10.xx.xx
DISCOURSE_REDIS_HOST: data
A menos que hayas ejecutado una limpieza que haya eliminado el contenedor, en cuyo caso probablemente estés en problemas.
Entonces me sorprende ver el error “cannot link”. Solo lo he visto cuando intenta usar un link de docker para hablar con otro contenedor en la misma máquina.
¡Oh! Sí, es el redis al que no puede conectarse. Tienes un contenedor data con el redis dentro, ¿verdad? El destroy start debería funcionar con la advertencia dada.
@pfaffman gracias, eso lo solucionó. Olvidé que el contenedor de datos también proporciona la funcionalidad de caché de Redis, pero de todos modos, ahora los contenedores están funcionando de nuevo.
¿Qué podemos hacer con el error de arranque del script del lanzador, línea 334? Nunca antes había visto este error. ¿Está el launcher_go/v2 listo para usar como reemplazo?