Immich en Proxmox con espejo ZFS: instalación y copia 3-2-1
Publicado 2026-10-27
Immich es una biblioteca autoalojada de fotos y vídeos con copia de seguridad desde el teléfono. Esta guía muestra una instalación que sobrevive al fallo de un disco: Immich en una máquina virtual de Proxmox, las fotos en un espejo ZFS y una auténtica copia de seguridad 3-2-1 por encima. Se supone que ya tiene Proxmox instalado y dos discos del mismo tamaño para el espejo.
Hardware: mínimos oficiales
| Elemento | Mínimo | Recomendado |
|---|---|---|
| RAM | 6 GB | 8 GB |
| CPU | 2 núcleos | 4 núcleos |
| Almacenamiento de la base de datos | SSD local, nunca un recurso de red compartido | |
Fuente: requisitos de Immich (página actualizada el 2026-10-08, consultada el 2026-10-19). La misma página señala que las miniaturas y el vídeo transcodificado añaden aproximadamente un 10–20% al tamaño de la biblioteca, y que con solo 4 GB de RAM conviene desactivar el aprendizaje automático.
Paso 1 — Crear el espejo ZFS
- En Proxmox: Datacenter → node → Disks → ZFS → Create: ZFS, seleccione ambos discos, nivel RAID Mirror.
- Un espejo de dos discos ofrece la capacidad de un solo disco; cualquiera de los dos puede fallar sin pérdida de datos.
- Añádalo como almacenamiento para discos de VM, o cree un dataset (p. ej.
tank/photos) para pasarlo a la VM.
Paso 2 — Crear la VM
- Cree una VM con Debian o Ubuntu que cumpla al menos los mínimos anteriores. Ponga el disco del sistema de la VM en SSD para que la base de datos Postgres esté en un SSD local.
- Establezca el tipo de CPU en
host(u otro tipo compatible con x86-64-v2); el contenedor de aprendizaje automático de Immich requiere x86-64-v2 en amd64. - Añada un segundo disco virtual en el espejo ZFS para las fotos y móntelo, p. ej. en
/srv/photos.
Immich documenta Docker Compose en una VM como la vía soportada; ejecutarlo dentro de contenedores LXC se describe como no recomendado.
Paso 3 — Instalar Immich
- Instale Docker y el plugin Compose.
- Descargue el
docker-compose.ymly elexample.envoficiales de la documentación de instalación de Immich. - En
.envdefinaUPLOAD_LOCATION=/srv/photos/libraryy mantengaDB_DATA_LOCATIONen el disco SSD del sistema. docker compose up -d, abra el puerto 2283, cree la cuenta de administrador, instale la aplicación móvil y active la copia de seguridad.
Paso 4 — Copia de seguridad 3-2-1
Un espejo protege contra un disco muerto, no contra un borrado, un ransomware o un incendio en casa. La propia documentación de Immich recomienda una estrategia 3-2-1: 3 copias, en 2 tipos de medios, 1 fuera del sitio.
| Copia | Dónde | Cómo |
|---|---|---|
| 1 | Espejo ZFS (en uso) | El propio Immich |
| 2 | Disco USB externo u otra máquina | Instantáneas ZFS + zfs send, o restic/borg |
| 3 | Fuera del sitio (bucket en la nube o el servidor de un amigo) | restic/borg con cifrado |
Respalde ambas partes. Immich crea volcados de la base de datos automáticamente en UPLOAD_LOCATION/backups (por defecto: diariamente a las 2:00 AM, se conservan los últimos 14). Esos volcados contienen solo metadatos, sin fotos, así que su tarea de copia debe copiar todo UPLOAD_LOCATION, que ya incluye los volcados. Fuente: copia de seguridad y restauración de Immich, consultada el 2026-10-19.
Pruebe una restauración al menos una vez: levante una VM desechable, restaure los archivos y un volcado, e inicie sesión.
Qué más cabe en el mismo servidor
- Un servicio de sincronización de archivos (p. ej. Syncthing) en el mismo espejo.
- Un servidor de gestor de contraseñas, respaldado con la misma tarea fuera del sitio.
- Monitorización (alertas de SMART de los discos y de scrub de ZFS): el seguro más barato de la lista.
Preguntas frecuentes
- ¿Es el espejo mi copia de seguridad?
- No. Es redundancia. Borrar una foto la borra al instante en ambos discos.
- ¿Puedo poner la base de datos en el espejo ZFS a través de NFS?
- Immich indica que la base de datos nunca debe estar en un recurso de red compartido. Manténgala en SSD local.
- ¿Cuánta RAM necesita el propio ZFS?
- ZFS usa la RAM libre como caché (ARC) y la devuelve cuando hay presión; presupueste primero la RAM de la VM y deje que el host use el resto.
Fuentes
- Requisitos de Immich — consultado 2026-10-19
- Copia de seguridad y restauración de Immich — consultado 2026-10-19
Relacionado (coreano): 개발 지식 모음 (en coreano)
🌐 English · Español · Bahasa Indonesia · 日本語 · ไทย · Tiếng Việt · 中文