Cómo instalar Immich en Windows y Linux: la alternativa privada a Google Fotos que uso yo
Todo empezó con un problema muy concreto: tenía una tablet vieja, una Edison 3G con Android 5.0.2, y quería convertirla en un marco digital. Nada complicado, solo que fuera pasando mis fotos automáticamente. El problema es que no me gustaba la idea de subir esas imágenes a ninguna nube y perder el control sobre ellas, y además la propia tablet se llevaba mal con casi cualquier app de galería: las fotos salían deformadas, mal escaladas, y ni conseguía reproducirlas bien, y eso sin contar con encontrar aplicaciones compatibles con la tablet.
Así que me puse a buscar algo que fuera completamente local, que pudiera cambiar las fotos del marco sin tener que tocar la tablet cada dos por tres, y que de paso me sirviera para lo que llevaba tiempo posponiendo: dejar de depender de Google Fotos para el backup de mis imágenes. Ahí apareció Immich, un gestor de fotos y vídeos autoalojado que hace básicamente lo mismo que Google Fotos —backup automático desde el móvil, organización por fechas, reconocimiento facial, búsqueda por contenido—, pero corriendo en tu propio hardware. Llevo varios meses con él, y en este tutorial te cuento cómo instalar Immich tanto en Linux como en Windows, cómo dejarlo configurado, y cómo acabé montando mi marco digital con él.

Qué es Immich y por qué lo elegí frente a Google Fotos
Lo que más me convenció de Immich no fue solo el ahorro de espacio en la nube de Google, sino la sensación de tener mis fotos controladas. Las copias se hacen normalmente al abrir la app conectado a la wifi de casa, y también en segundo plano cuando el sistema lo permite —aunque en Android, según el fabricante, las restricciones de batería a veces pueden retrasar esas copias en segundo plano—. Como tengo montada mi propia VPN con WireGuard, también puedo hacer copias y acceder a la biblioteca estando fuera, en cualquier momento. Con eso, Google Fotos se quedó fuera de mi flujo por completo.
Hay una función en concreto que me sigue pareciendo de lo más interesante: el reconocimiento facial. Puedes etiquetar a las personas que aparecen en tus fotos, y a partir de ahí Immich las reconoce automáticamente en el resto de la biblioteca. Funciona sorprendentemente bien, y lo mejor es que ese procesamiento se queda en tu propio servidor — no estás mandando las caras de tu gente a ningún servicio externo para que las analice.
Qué necesitas antes de instalar Immich
Antes de meterte en faena, conviene comprobar que tu equipo aguanta esto sin problemas:
- RAM: mínimo 6 GB para que vaya fluido, especialmente durante la subida de fotos, y 8 GB recomendado. Con solo 4 GB también puedes ejecutar Immich, pero tendrás que desactivar las funciones de machine learning, es decir, el reconocimiento facial y la búsqueda inteligente.
- CPU: mínimo 2 núcleos, recomendado 4. Immich funciona tanto en amd64 (Intel/AMD de 64 bits) como en arm64 (por ejemplo, una Raspberry Pi). En procesadores amd64, desde la versión 3 el contenedor de machine learning necesita compatibilidad con el nivel de microarquitectura x86-64-v2; la mayoría de procesadores lanzados desde aproximadamente 2012 lo soportan. Si el tuyo no llega, la última versión compatible es la 2.7.5, que ya no recibe soporte.
- Almacenamiento: la carpeta donde Immich guarda la base de datos necesita un sistema de archivos compatible con permisos de usuario y grupo al estilo Unix (ext4, ZFS, APFS…). Más adelante, en la parte de Windows, verás por qué esto obliga a usar un volumen de Docker en vez de una carpeta normal. Ten en cuenta además que la generación de miniaturas y vídeos transcodificados puede aumentar el tamaño de tu biblioteca entre un 10 y un 20% de media.
- Docker: hace falta Docker con el plugin de Docker Compose — el comando docker compose, con espacio. El antiguo docker-compose con guion está descontinuado y no sirve.
Si además quieres acceder desde fuera de casa
Si solo vas a usar Immich dentro de tu propia wifi, con lo anterior ya tienes suficiente. Pero si quieres que el backup del móvil funcione también fuera de casa, o entrar desde el trabajo o de viaje, hay dos caminos:
- VPN (la que uso yo, y la que recomiendo): te conectas primero a tu red de casa mediante una VPN, en mi caso WireGuard, y una vez «dentro» accedes a Immich exactamente igual que si estuvieras en el wifi de casa, sin abrir nada directamente a internet. Es la opción más segura, porque Immich nunca queda expuesto de cara al exterior. Necesitas un servidor VPN corriendo en tu red (un Raspberry Pi, tu propio router si lo soporta, o el mismo equipo donde tengas Immich).
- Reverse proxy: la propia documentación de Immich avisa de algo importante: nunca hay que abrir el puerto 2283 directamente a internet sin nada delante, porque eso expondría la web sin cifrar y te dejaría vulnerable a ataques de tipo «man in the middle». La forma correcta es poner un reverse proxy delante (por ejemplo Nginx o Caddy) que reciba las conexiones cifradas por HTTPS desde fuera y las reenvíe internamente a Immich. Para esto hace falta un dominio (propio o gratuito, tipo DuckDNS o Dynu) y un certificado SSL. Es más cómodo de usar que la VPN una vez montado, pero también más delicado de configurar bien.
Si tu IP pública cambia de vez en cuando —que es lo normal en la mayoría de conexiones domésticas—, necesitarás además un servicio de DNS dinámico (DDNS) para que un dominio apunte siempre a tu IP actual. En mi caso, al usar WireGuard directamente en mi red, uso DDNS y tengo abierto en el router el puerto de la VPN.
Un aviso más si usas un firewall como UFW en el propio servidor: Docker gestiona sus propias reglas de red por debajo, así que no des por hecho que una regla de UFW va a bloquear automáticamente el puerto de un contenedor — Docker puede saltársela.
Por cierto, si te interesa la función de Google Cast que veremos más adelante en la configuración inicial, ten en cuenta que no basta con tener HTTPS: Immich exige que la instancia sea accesible públicamente por HTTPS y que su registro DNS sea resoluble desde los servidores DNS de Google. O sea, que con una VPN cerrada no vas a poder usar esa función concreta. Además, de momento es una función experimental y solo funciona desde el cliente web, no desde la app móvil.
Este tutorial se centra en la instalación y el uso en local. Si os interesa que escriba aparte, paso a paso, cómo monté yo el acceso remoto con WireGuard, decídmelo en los comentarios y lo preparo.
Cómo instalar Immich en Linux
Yo trabajo con Linux Mint, que está basado en Ubuntu (y este, a su vez, en Debian), así que el tutorial sigue los pasos de mi propia instalación. Ojo si usas LMDE (Linux Mint Debian Edition): esa variante está basada directamente en Debian, no en Ubuntu, así que estos comandos concretos del repositorio de Docker no son los mismos — busca la guía de instalación de Docker para Debian en vez de esta. Si usas otra distro distinta, puede que algún detalle tampoco sea exactamente igual.
Aviso si también usas Linux Mint: Docker señala oficialmente que las distribuciones derivadas de Ubuntu, como Mint, no están soportadas de forma oficial con este método de instalación, aunque en la práctica funciona sin problemas, como puedes comprobar tú mismo aquí.
Paso 1: instalar Docker
Si ya tienes Docker instalado, no des el paso por hecho — comprueba primero que tienes la versión correcta con:
docker --version
docker compose versionSi el segundo comando falla o no reconoces la versión, es probable que tengas el paquete docker.io de los repositorios de la distro en vez de la versión oficial de Docker, y eso puede darte errores más adelante con el docker-compose.yml de Immich (por ejemplo unknown shorthand flag: ‘d’ in -d). Si es tu caso, sigue los pasos de abajo igualmente para instalar la versión oficial. Si no tienes Docker instalado, copia y pega esto en tu terminal:
sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Te pedirá tu contraseña de administrador, y en algún punto te avisará de que necesita espacio adicional en disco — dile que sí y la instalación continuará sola. Una vez termine, comprueba que la instalación funciona bien con:
sudo docker run hello-worldSi te devuelve un mensaje de bienvenida, Docker está instalado y funcionando correctamente — mejor descubrirlo ahora que a mitad de instalar Immich.
Para no tener que escribir sudo delante de cada comando de Docker a partir de ahora:
sudo usermod -aG docker $USER
newgrp dockerPaso 2: crear la carpeta de Immich y descargar los archivos
mkdir ./immich-app
cd ./immich-app
wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.envPaso 3: configurar el archivo .env
Ábrelo con nano:
nano .envY ajusta estas líneas:
- UPLOAD_LOCATION: la carpeta donde se guardarán tus fotos y vídeos originales. Puedes dejarla como está o cambiarla por la ruta que prefieras.
- DB_DATA_LOCATION: carpeta para los datos de Postgres (por defecto, ./postgres).
- DB_PASSWORD: cámbiala por una contraseña propia, usando solo letras y números — nada de caracteres especiales, para evitar problemas de parseo.
- TZ: quita la # de la línea y pon tu zona horaria (por ejemplo, Europe/Madrid).
No hace falta tocar DB_USERNAME ni DB_DATABASE_NAME — Postgres no está expuesto a internet, así que cambiarlos no aporta nada de seguridad real. Tampoco toques IMMICH_VERSION=v3 salvo que sepas exactamente qué versión quieres usar: así es como te llega la rama estable, que es lo recomendado.
Para guardar en nano: Ctrl+O, Enter para confirmar, y Ctrl+X para salir.

Paso 4: levantar los contenedores
docker compose up -dEsperamos a que termine, puede tardar un poco la primera vez. Para comprobar que todo ha subido bien:
docker compose psDeberías ver contenedores como immich_server, immich_postgres, immich_machine_learning e immich_redis con estado Up o running.

Con esto, ya puedes entrar a la máquina desde el navegador, poniendo la IP y el puerto 2283. Si no sabes tu IP:
hostname -ISi te salen varias direcciones, usa la que empiece por 192.168. o 10., que es tu red local de verdad — ignora otras que puedan aparecer de redes virtuales de Docker.
En mi caso, para entrar uso http://192.168.1.183:2283.
Cómo instalar Immich en Windows
Paso 1: activar WSL2 e instalar Docker Desktop
Docker desaconseja usar Windows de forma nativa para self-hosting serio, pero funciona bien apoyándose en WSL2. Ten en cuenta que, además de los 6-8 GB de RAM que pide Immich, Microsoft exige un mínimo de 8 GB de RAM en el propio equipo para que WSL2 funcione bien — así que en la práctica, para ir sobrado en Windows, cuanta más RAM mejor.
Si no sabes si ya tienes WSL instalado (por ejemplo, si has usado Docker Desktop antes), compruébalo primero con:
wsl --versionSi te devuelve un número de versión, ya lo tienes instalado y puedes saltarte el siguiente comando. Si no, desde PowerShell como administrador:
wsl --install --web-download

Este comando prepara Windows para poder ejecutar programas de Linux por dentro, que es justo lo que Docker necesita para funcionar con contenedores. En un solo paso activa lo necesario en el sistema e instala una versión ligera de Ubuntu de forma automática. No hace falta entender cómo funciona por dentro, solo saber que es un paso previo obligatorio antes de instalar Docker Desktop. Uso aquí específicamente la opción –web-download porque, en mis pruebas, el método normal se quedó colgado sin avisar por un problema de descarga desde la Microsoft Store — con esta opción se descarga directamente y evita ese problema.
Te pedirá crear un usuario y contraseña por defecto para esa distro de Linux dentro de Windows, y después te preguntará si quieres compartir métricas para ayudar a mejorar la instalación — eso ya es cuestión personal.
Ten en cuenta que WSL2 necesita que la virtualización por hardware (Intel VT-x o AMD-V) esté activada en la BIOS/UEFI del equipo, no solo en Windows. Si está desactivada, la instalación del componente «Virtual Machine Platform» se puede quedar colgada sin dar ningún error visible. Se comprueba así, sin entrar en la BIOS:
systeminfo
Una vez instalado, reinicia el equipo si te lo pide.
Ahora toca descargar Docker Desktop desde la web oficial de Docker. Puedes descargarlo e instalarlo directamente, o hacerlo desde la Microsoft Store — yo elegí la descarga directa, «Docker Desktop for Windows – x86_64».

Durante la instalación te preguntará si quieres usarlo solo para tu usuario o para todos los del equipo — si lo usas tú solo, mejor por usuario, aunque es cuestión de gustos. Marca la casilla de crear acceso directo en el escritorio y dale a aceptar.

Una vez instalado, ábrelo. La primera vez te pedirá aceptar los términos de Docker Desktop. Elige si es para uso personal o de trabajo y pon tu correo, o simplemente dale a «Skip» arriba a la derecha. Una vez dentro, en la configuración general, asegúrate de que esté marcado usar WSL2 como motor.
Para comprobar que todo está bien conectado, abre PowerShell y ejecuta:
docker compose versionSi te devuelve un número de versión, está todo correcto.
Paso 2: crear la carpeta y descargar los archivos
En mi caso voy a instalarlo en D:, pero puedes hacerlo en cualquier unidad o carpeta que quieras. Desde PowerShell, entra en la ubicación donde quieras guardar Immich y ejecuta:
mkdir immich-app
cd immich-app
curl.exe -L https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml -o docker-compose.yml
curl.exe -L https://github.com/immich-app/immich/releases/latest/download/example.env -o .env(Uso curl.exe en vez de curl a secas porque PowerShell tiene su propio alias curl que no acepta los mismos parámetros.)
Paso 3: configurar el .env — con el aviso importante de Windows
Ábrelo con el bloc de notas usando el siguiente comando:
notepad .envDentro, ajusta estas líneas:
- UPLOAD_LOCATION: la carpeta donde se guardarán tus fotos y vídeos originales. Puedes dejarla como está o cambiarla por la ruta que prefieras.
- DB_PASSWORD: cámbiala por una contraseña propia, usando solo letras y números — nada de caracteres especiales, para evitar problemas de parseo.
- TZ: quita la almohadilla de la línea y pon tu zona horaria (por ejemplo,
Europe/Madrid).
No hace falta tocar DB_USERNAME ni DB_DATABASE_NAME — Postgres no está expuesto a internet, así que cambiarlos no aporta nada de seguridad real.

Nota para Windows: si quieres guardar las fotos en otro disco (por ejemplo D:\Fotos), escribe la ruta con barras normales en vez de invertidas: UPLOAD_LOCATION=D:/Fotos. Si prefieres no complicarte, déjalo en ./library y se guardará dentro de la misma carpeta immich-app.
Aquí viene el punto donde más gente se atasca en Windows: según la propia documentación de Immich, la base de datos de Postgres necesita un sistema de archivos compatible con permisos de usuario y grupo, y no funciona sobre NTFS ni exFAT/FAT32. Puede que en algunos casos parezca arrancar sin problema al principio, pero el riesgo real es que la base de datos se corrompa o falle más adelante, con tus fotos y álbumes ya dentro — no es algo que se note siempre en el primer arranque. Por eso hay que cambiar ese punto de montaje por un volumen nativo de Docker desde el principio. En el .env, busca la línea DB_DATA_LOCATION=./postgres y cámbiala por:
DB_DATA_LOCATION=pgdataDespués, abre también docker-compose.yml con el bloc de notas desde PowerShell:
notepad docker-compose.ymlUna vez abierto, vete al final del archivo. Ahí encontrarás una sección que empieza pegada al margen izquierdo, sin sangría, que dice volumes:, y justo debajo una línea con dos espacios de sangría que dice model-cache:. Se ve así:
volumes:
model-cache:Coloca el cursor al final de la línea model-cache:, pulsa Enter, y escribe pgdata: dejando dos espacios en blanco delante —o pulsando la barra espaciadora dos veces— para que quede alineado justo debajo de la «m» de model-cache, no pegado al margen como volumes:. Quedaría así:
volumes:
model-cache:
pgdata:
Este archivo es de tipo YAML, y ahí la sangría no es estética: si pgdata: queda mal alineado, con más o menos espacios que model-cache:, Docker Compose lo interpretará como otra cosa y dará error al ejecutar docker compose up -d. Así que fíjate bien en que quede exactamente igual de sangrado que la línea de arriba.
Guarda y cierra los dos archivos.
Paso 4: levantar los contenedores
Desde PowerShell
docker compose up -dPuede tardar un poco la primera vez. Comprueba que todo está arriba con:
docker compose psY ya puedes entrar por 127.0.0.1:2283, o por tu IP —para saberla, escribe ipconfig—. Si te salen varios adaptadores, busca la IPv4 de tu tarjeta de red normal (WiFi o Ethernet), no la de los adaptadores virtuales que crean Docker o WSL. En mi caso, 192.168.1.69:2283.
El primer arranque: crear el usuario administrador y configurar el asistente
Si todo ha ido bien, en cualquiera de los dos sistemas te saldrá la pantalla de bienvenida de Immich. Pulsa en «Comenzar», pon el correo que vayas a usar, una contraseña y tu nombre de usuario, y a continuación inicia sesión. El primer usuario que se registra pasa automáticamente a ser el administrador del servidor.
A partir de ahí arranca un asistente rápido para dejarlo configurado a tu gusto. Empieza por el tema (claro u oscuro, al gusto; yo lo dejé en claro) y el idioma (en mi caso, español).
La siguiente pantalla es la de privacidad del servidor, donde decides sobre dos funciones opcionales que usan servicios externos. El mapa —para ver dónde se tomaron tus fotos según su ubicación GPS— carga las imágenes de calles y países desde un servicio externo de Immich, tiles.immich.cloud, así que tu instancia se conecta a internet para mostrarlo. Y verificar versión hace que tu servidor compruebe periódicamente en version.immich.cloud si hay una actualización disponible. Ambas vienen activadas por defecto y se pueden cambiar luego sin reinstalar nada, desde Configuración → Configuración del servidor.

Después viene la privacidad del usuario, donde puedes activar Google Cast por si quieres enviar fotos y vídeos a dispositivos de Google (recuerda los requisitos de red que comentaba más arriba).
La plantilla de almacenamiento viene desactivada por defecto, y así se guardan los archivos en la estructura interna de Immich sin que tengas que preocuparte de nada — es la opción recomendada si vas a acceder siempre desde la app o la web. Si la activas, puedes definir tú mismo cómo se organizan carpetas y nombres de archivo, por ejemplo por año y fecha (2026/2026-09-15/nombre.jpg), lo cual solo es útil si además quieres poder navegar tus fotos «a mano» desde fuera de Immich. No es una decisión definitiva: se puede activar, desactivar o cambiar más adelante desde Administración → Configuración → Plantilla de almacenamiento, y Immich tiene un proceso para reorganizar los archivos ya subidos si cambias de plantilla después. Eso sí, si la desactivas más adelante, los archivos que ya se movieron con la plantilla activa se quedan donde están — no vuelven solos a su sitio anterior, solo cambia cómo se organizan las subidas nuevas.

La pantalla de copias de seguridad no pide configurar nada, es solo un aviso antes de terminar: Immich no es un backup en sí mismo, es el programa que organiza y muestra tus fotos. Vuelvo sobre esto más abajo con detalle, porque es importante.
Y por último te pide instalar la app móvil. Yo uso Android, así que elegí la tienda de aplicaciones y me la descargué desde Google Play.
Cómo configurar la app móvil y activar el backup automático
Al abrir la app por primera vez, lo primero es poner la IP y el puerto de tu servidor — en mi caso, http://192.168.1.20:2283, tú pon la tuya seguida de :2283. Dale a siguiente e inicia sesión con el correo y la contraseña que creaste antes. Es importante que le des permiso de acceso a tus fotos y vídeos, porque sin eso Immich no puede leerlos para hacer la copia de seguridad.

Con esto ya está configurado, así que toca usarlo para lo que de verdad importa: hacer copia de tus fotos. Arriba a la derecha, selecciona el icono de la nube. Te pedirá elegir qué álbumes del móvil quieres respaldar —ojo, aquí se refiere a las carpetas de tu teléfono, no a los álbumes que crearemos luego dentro de Immich—. Dale a «Seleccionar» y marca las que te interesen; yo, para la prueba, elegí solo «Captura», pero puedes marcar varias. Si se te olvida alguna, siempre puedes volver a entrar y añadirla. Por último, activa abajo «Habilitar copia de seguridad», y con eso ya tienes tus imágenes a salvo en tu propia nube.
Una nota que vale la pena tener en cuenta: cuando subes muchas fotos de golpe —por ejemplo, la primera sincronización completa del móvil—, Immich no las procesa al instante. Hay tareas en segundo plano (generar miniaturas, reconocer caras, indexar para la búsqueda) que pueden tardar según cuántas fotos sean y la potencia de tu equipo. Puedes ver el progreso en Administración → Trabajos, así que si después de una subida grande las caras no aparecen reconocidas de inmediato, no es que algo haya fallado — solo hay que esperar a que termine la cola.
Cómo compartir álbumes y crear cuentas para la familia
Además del backup, puedes crear tus propios álbumes para organizar fotos concretas. Ve a la pestaña «Álbumes», crea uno, selecciona las fotos que quieras que aparezcan, y listo — se mostrarán solo esas. Yo, por ejemplo, uso esto para el pase de diapositivas de mi marco digital, y funciona realmente bien.
Esto también sirve para compartir con amigos o familiares, ya sea mandando un enlace o añadiendo directamente a usuarios invitados. Y aquí viene un punto importante: crear usuarios nuevos no se puede hacer desde la aplicación móvil, así que hace falta entrar por la web al servidor. Una vez dentro, ve a tu usuario arriba a la derecha y entra en «Administración». A la izquierda, selecciona «Usuarios» y, a la derecha, «Crear usuario». Ahí pones el correo, el nombre de usuario y una contraseña, seleccionas el límite de cuota —por si no quieres que suba demasiado— y decides si esa persona también será administradora.
Si has dejado activada la opción de pedir cambio de contraseña en el primer inicio de sesión, Immich se lo pedirá a esa persona en cuanto entre; a partir de ahí ya tendrá acceso para configurar sus propias copias de seguridad y ver los álbumes que le compartas. Para compartir un álbum en concreto: créalo (desde la app o la web, con el botón «+»), ponle un nombre —por ejemplo, «Compartida»—, selecciona las fotos y dale a crear. Después, entra en ese álbum, pulsa los tres puntos arriba a la derecha, selecciona «Añadir usuarios», elige a quién quieres compartírselo y confirma. Es muy útil, por ejemplo, para tener una carpeta compartida de un evento familiar.
Cómo convertí una tablet vieja en marco digital con Immich
Volviendo a por qué empecé con todo esto: mi idea desde el principio era usar Immich como marco digital en la Edison 3G. Para que funcionara tuve que instalar Firefox, que es el único navegador con el que conseguí que fuera bien — con Android 5.0.2 encima, no es de extrañar que el navegador por defecto se llevara mal con según qué páginas.
Una vez con Firefox, me conecté al servidor, entré en el álbum que quería mostrar, y arriba te aparece la opción de «Pase de diapositivas». Al activarla, entras en el engranaje de ajustes, donde puedes configurar cómo se comporta: en mi caso, lo dejé en orden aleatorio, con reproducción automática, repitiendo la transición para que no se pare nunca, y mostrando cada imagen durante 5 segundos. Con eso, ya tengo mi marco digital funcionando en mi vieja Edison 3.

Por cierto, existen herramientas más especializadas para esto, como Immich Kiosk o ImmichFrame, pensadas específicamente para dejarlas funcionando sin tocarlas nunca más. Kiosk no tiene app de Android, es un servicio que se ve desde el navegador igual que hice yo; e ImmichFrame sí tiene una app para Android, pero se instala como APK desde GitHub, no desde la Play Store. En mi caso, con la Edison 3G en Android 5.0.2, no conseguí que ninguna de las dos funcionara bien — el mismo problema de compatibilidad que ya me dio guerra con otras apps de galería—, así que me quedé con la solución más simple: el navegador y el pase de diapositivas nativo de Immich, que sí tira sin problemas.
Cómo actualizar Immich
Immich se actualiza con bastante frecuencia, y aunque la mayoría de las veces el proceso son dos comandos, de vez en cuando alguna versión trae cambios que piden un paso extra —por ejemplo, en el pasado ha cambiado el motor de base de datos interno—. Por eso, antes de actualizar conviene echar un vistazo rápido a las notas de la nueva versión en su página de releases de GitHub, sobre todo si ves la palabra «Breaking Changes». Si vas a saltar de una versión mayor a otra (por ejemplo de v2 a v3), haz antes una copia de la base de datos y sigue las instrucciones concretas de migración que indique esa versión, no solo los dos comandos de siempre.
Hecho eso, entra en la carpeta immich-app (donde tienes el docker-compose.yml) y ejecuta:
docker compose pull
docker compose up -dEl primer comando descarga las imágenes más recientes; el segundo recrea los contenedores que sea necesario utilizando esas nuevas imágenes, sin perder ni tus fotos ni la configuración. Si quieres liberar espacio en disco de paso:
docker image pruneUna cosa más: si cambias de versión mayor, actualiza también la app del móvil antes o justo después del servidor. Immich exige que ambos vayan a la par en la versión mayor, y si se quedan desajustados puede que la app deje de conectar hasta que actualices el que falte.
Este proceso vale igual para Linux y Windows — solo cambia que en Windows lo ejecutas desde PowerShell.
Y un último consejo: si vas a hacer la copia de las dos cosas (fotos y base de datos), hazlo con Immich parado, o si no puedes, copia antes la base de datos y después las fotos. Así evitas que se queden descuadradas entre sí.
Problemas habituales al instalar Immich
Durante las pruebas para este tutorial me encontré con tres fallos reales, así que los dejo aquí recopilados por si te topas con alguno:
- Error al configurar el repositorio de Docker en Linux: si el archivo docker.sources no usa el formato correcto (con los campos Types:, URIs:, Suites: y demás), apt se queja de que el tipo está mal especificado y no puede leer las listas de fuentes. El bloque que tienes más arriba en este tutorial ya usa el formato bueno.
- wsl –install se queda colgado sin avisar: es un problema conocido relacionado con la descarga desde la Microsoft Store. La solución, como ya has visto, es usar wsl –install –web-download para descargar directamente sin pasar por la Store.
- Postgres falla en Windows si DB_DATA_LOCATION apunta a una carpeta normal: por la incompatibilidad de NTFS con los permisos que necesita Postgres. La solución es la que hemos visto: usar un volumen de Docker (pgdata) en vez de una carpeta del disco.
Immich no es un backup: qué copias de seguridad necesitas de verdad
Vale la pena remarcar lo que ya avisa el propio asistente de instalación: Immich organiza y muestra tus fotos, pero no sustituye una estrategia de copias de seguridad real. Si el disco de tu servidor falla, lo pierdes todo igual que si nunca hubieras tenido copia.
En la práctica tienes que proteger dos cosas. Por un lado, tus fotos y vídeos, que están en la carpeta UPLOAD_LOCATION. Y por otro, la base de datos de Immich, que guarda usuarios, álbumes, metadatos y todo el reconocimiento facial. Esto segundo es más importante de lo que parece: Immich guarda las rutas de los archivos en la base de datos y no escanea la carpeta de la biblioteca para reconstruirla. Traducido, si pierdes la base de datos, tus fotos siguen físicamente en el disco pero Immich no tiene registro de ellas — álbumes, personas y metadatos desaparecen aunque las imágenes sobrevivan. Por eso una copia solo de UPLOAD_LOCATION no es un backup completo.
Aquí hay algo importante que conviene saber antes de montarte tu propio script: no se recomienda copiar directamente la carpeta DB_DATA_LOCATION. Hacerlo con la base de datos en marcha puede generar una copia corrupta que luego no se pueda restaurar, así que no es el camino. Lo que sí hace Immich por su cuenta es crear volcados automáticos de la base de datos, que por defecto guarda en UPLOAD_LOCATION/backups, conservando los últimos 14 y generando uno nuevo cada día a las 2:00 de la madrugada (puedes ajustar ambas cosas desde los ajustes de administración).
Ojo, que esos volcados automáticos no son tu copia de seguridad: contienen solo metadatos, nunca fotos ni vídeos, y además se guardan dentro de UPLOAD_LOCATION, así que si falla ese disco se pierden junto con todo lo demás. Piénsalos más bien como una comodidad para recuperar la base de datos si se corrompe o falla una actualización, y como una de las cosas que tu copia de seguridad de verdad tiene que incluir. La copia externa, fuera de esa máquina, es lo único que te protege de un fallo de disco o de un desastre físico.
Conclusión: ¿merece la pena instalar Immich?
Después de varios meses usándolo a diario, para mí la respuesta es clara: sí. Si te preocupa dónde acaban tus fotos, si quieres dejar de pagar por espacio en la nube, o simplemente te apetece tener el control total sobre tu propia biblioteca, Immich cumple de sobra. La instalación con Docker no es complicada ni en Linux ni en Windows, aunque en Windows hay algún punto —el de la base de datos en NTFS, sobre todo— donde conviene ir con cuidado.
Eso sí, no es una solución de un clic: exige un mínimo de mantenimiento (actualizaciones, vigilar el espacio en disco, montarte tus propias copias de seguridad) y, si quieres acceder desde fuera de casa, un paso más de configuración de red. Para quien ya tiene algo de soltura con Docker, o simplemente ganas de aprender, es de las mejores alternativas privadas a Google Fotos que he probado — y encima me ha servido para revivir una tablet que llevaba años en un cajón.
¿Le has dado ya una oportunidad a Immich, o sigues con Google Fotos? Cuéntame en los comentarios cómo te ha ido con la instalación, o si te interesa que prepare el tutorial de acceso remoto con WireGuard.
Preguntas frecuentes sobre Immich
¿Es gratis Immich?
Sí, Immich es un proyecto de código abierto y gratuito. Los costes dependen de cómo lo montes: necesitas el hardware donde ejecutarlo y, si utilizas un dominio propio para el acceso remoto, el coste de ese dominio.
¿Puedo instalar Immich en una Raspberry Pi?
Sí, con 4 GB de RAM como mínimo y el machine learning desactivado, lo que significa renunciar al reconocimiento facial y a la búsqueda inteligente. Con 6-8 GB puedes usar Immich con todas las funciones activas.
¿Immich es seguro y privado?
El procesamiento de reconocimiento facial y búsqueda se hace en local, en tu propio servidor, sin enviar tus fotos a terceros. Solo dos funciones opcionales, el mapa y la comprobación de versión, hacen alguna conexión a servidores externos de Immich, y ambas se pueden desactivar sin perder el resto de funciones.
¿Puedo acceder a Immich fuera de casa?
Sí, con una VPN como WireGuard, que es la opción más segura, o con un reverse proxy y HTTPS delante de Immich si quieres acceder sin VPN — nunca conviene abrir el puerto de Immich directamente a internet sin nada delante. Si tu IP pública cambia con frecuencia, necesitarás además un servicio de DNS dinámico.
¿Qué diferencia hay entre instalar Immich en Windows y en Linux?
El proceso es prácticamente igual gracias a Docker, pero en Windows hace falta instalar antes WSL2 y Docker Desktop, y además hay que usar un volumen de Docker en vez de una carpeta normal para la base de datos, porque Postgres no funciona bien sobre NTFS.
¿Cómo actualizo Immich a la última versión?
Entrando en la carpeta donde tienes el docker-compose.yml y ejecutando docker compose pull seguido de docker compose up -d. Conviene revisar antes las notas de la nueva versión por si trae cambios importantes.
¿Puedo crear usuarios nuevos desde la app móvil de Immich?
No. El panel de administración, donde se crean y gestionan los usuarios, solo está disponible en la interfaz web. Hay que entrar al servidor desde un navegador con la cuenta de administrador.
También podría interesarte:
Dynu DNS: la alternativa gratuita a DuckDNS que llevo meses usando en Home Assistant
Cómo instalar HACS facilmente en Home Assistant paso a paso
Baseus EnerFill FC11: análisis de la powerbank de 20.000 mAh y 45W
Descubre más desde ANALISISGADGETS
Suscríbete y recibe las últimas entradas en tu correo electrónico.








