Skip to content

Immich: actualización a 3.3.5 aplicada, 22 octubre 2026

Estado: server y machine-learning 3.3.5 en servicio normal, comprobados a las 15:31 CEST. API, HTML y acceso por Caddy LAN respondieron correctamente. PostgreSQL y Redis conservan sus contenedores y datos existentes. La actualización queda cerrada; la restauración integral de originales continúa como trabajo DR separado.

Cambio aplicado

La release oficial 3.3.5, publicada el 21 octubre, contiene cambios de certificados y parches de Node.js. No se ha demostrado explotación de nuestra instancia ni se atribuyen a 3.2.0 avisos cuyo rango no la incluye.

Se cambiaron únicamente las dos referencias de imagen del Compose desplegado /home/monxas/stacks/tools/compose.yaml, preservando configuración, credenciales, montajes, redes, límites y las variantes CPU anteriores. Fuente integrada en homelab-stacks PR7, merge <REDACTED> en master.

Componente Versión / índice OCI instalado
Server 3.3.5 · sha256:<REDACTED>
Machine learning 3.3.5 · sha256:<REDACTED>
PostgreSQL Sin cambio: 16-vectorchord0.4.3-pgvectors0.2.0
Redis Sin cambio: redis:7

No se avanzó todo el checkout vivo: contiene otros cambios remotos de Hunter/Scanner que necesitan conservar sus colas en memoria. No se recrearon esos servicios ni los otros componentes del stack tools.

Ventana de mantenimiento realizada

A las 15:27 CEST se confirmó el mismo boot VM208 9145dece…, los cuatro IDs anteriores, estado sano y cero reinicios. Compose 5.5.1 resolvió correctamente los 17 servicios. Las imágenes nuevas ya estaban descargadas.

Entre las 15:29 y 15:31 CEST:

  1. Se detuvieron server y ML, manteniendo PostgreSQL y Redis en ejecución.
  2. Se guardó un pg_dumpall fresco: 206.032.339 bytes gzip, productor y compresor exit0, con gzip -t correcto. Se ejecutó Redis SAVE y se copió su RDB, validado por redis-check-rdb y comparación de bytes estable. Las copias y configuración privada permanecen en el propio nodo, bajo un directorio root exclusivo; no se exportaron al Mac ni al repositorio.
  3. Se recrearon sólo server y ML con las imágenes fijadas. El servidor usó temporalmente IMMICH_HOST=127.0.0.1 dentro de su contenedor y IMMICH_WORKERS_INCLUDE=api. La API arrancó, completó migraciones y respondió versión 3.3.5 antes de reabrir el servicio normal.
  4. Se retiraron ambas variables temporales y se recreó el servidor con su configuración normal. ML conservó el nuevo contenedor. DB y Redis mantuvieron sus IDs durante toda la operación.

La configuración efectiva se comparó en RAM antes de cada transición; las únicas diferencias permanentes son las dos imágenes. No se imprimieron secretos ni configuraciones completas. No se activó otra revisión de modelo ML ni se lanzó un reprocesado manual de la biblioteca.

Comprobación y límites

A las 15:31 CEST server, ML y PostgreSQL estaban healthy, con cero reinicios; Redis estaba running y no dispone de healthcheck. Los IDs de imagen coinciden con los config/ImageID esperados. HTML, ping y versión respondieron HTTP200. Los logs de arranque normal muestran API y microservices, sin líneas de error detectadas por la selección revisada. Las variables de mantenimiento ya no están presentes.

También respondió HTTP200 y versión 3.3.5 la ruta HTTPS pics.monxas.casa resuelta directamente a la VIP LAN de Caddy. Esto verifica esa ruta y la API, no un recorrido autenticado de álbumes, subida de fotos o inferencia ML. No se ha recorrido el NAS ni demostrado con esta actualización la integridad de todos los originales.

La política oficial de actualización no admite downgrade de imágenes. Se conservan el punto anterior y las imágenes antiguas; volver a ellas requeriría recuperar datos compatibles. Después de reabrir clientes/workers, una restauración de ese punto puede perder escrituras posteriores y no debe ejecutarse automáticamente.

Recuperación integral: pendiente independiente

La restauración DB-only del dump19 acreditó 31.595 assets y el cotejo histórico comprobó referencias por metadata y tres originales recuperados. El ciclo ordinario22 tiene publicación ligada al contexto de originales del día22. Estas pruebas no equivalen a restaurar la aplicación completa ni prueban el contenido de toda esa generación.

El checkpoint de esta ventana tiene gzip y RDB validados, pero no se ha restaurado de nuevo. La actualización queda cerrada sin convertir el DR completo en condición para cada parche.

Evidencia seleccionada privada

En el Mac, immich-final-20261022/maintenance.jsonl, release.json, verify.json y route.json registran tiempos, IDs y resultados seleccionados. El punto de retorno permanece en el nodo bajo /root/immich-maintenance-20261022-mcgqgxka. Los recibos no contienen los datos privados del backup. El historial de preparación anterior se conserva en Git (PR154/162); sus estados de caché o admisión no se presentan como despliegue.