Immich en tu Mini PC: Guía definitiva para recuperar tu privacidad y dejar Google Fotos

Publicada:

Uno de los pasos más importantes que puedes dar para mejorar tu vida digital es abandonar servicios en la nube como Google Fotos o iCloud. La mayoría no respeta tu privacidad y te cuesta un buen dinero año a año en suscripciones cada vez más caras. La solución es alojar tú mismo en un servidor local (en tu mini PC) un programa como Immich (Open Source y gratuito) para gestionar todas tus fotos.

Requisitos previos a la instalación de Immich: tener tu Mini PC con Linux, Docker, Docker Compose y Portainer (opcional). En principio, podrás acceder a tu servidor de fotos en tu red local. Si quieres conectarte a Immich desde fuera de tu red local (fuera de tu casa, por ejemplo), vas a tener que configurar en tu Mini PC y en tu móvil (por ejemplo), la app Tailscale (gratis), que se configura de manera muy sencilla. Así evitas exponer Immich directamente a internet y no tienes que configurar un reverse proxy. Tampoco necesitas HTTPS con certificados SSL.

Sigue estos pasos:

  1. Consigue un Mini PC e instala Linux y Docker: Para Immich, es suficiente un modelo con un chip sin demasiadas pretensiones como el Intel N100 o el N150. Con 16 GB de RAM tienes de sobra. Necesitas un disco SSD para el SO y tus contenedores Docker y un HDD para tus fotos. Por menos de 130 euros tienes muchos modelos en AliExpress.
  2. Configura Docker correctamente con backups y reinicio automático para no llevarte una sorpresa después de pasarte horas configurándolo todo.
  3. Prepara tu carpeta de fotos con un backup de Google Fotos o de iCloud. Intenta exportar los metadatos, algo que he conseguido en Mac con el programa osxphotos.
  4. Sigue esta guía para instalar Immich.

Qué es Immich

Interfaz de Immich en nuestro mini PC (servidor local)

Immich es una aplicación que puedes instalar fácilmente con Docker en tu servidor local (en tu mini PC) para guardar, gestionar y compartir fotos y vídeos. Es la mejor alternativa privada a Google Fotos, iCloud o Amazon Fotos. Sin dudarlo un minuto, sobre todo desde que han llegado a su versión estable en octubre de 2025. Tienes una demo en su sitio web para probarla antes de liarte con la instalación.

  • Totalmente autoalojada: tú controlas tus datos, sin servidores externos.
  • Ideal para usar en servidores personalesNAS, o VPS (por ejemplo, con Docker).
  • Código open source, disponible en GitHub.
  • Apps oficiales para Android e iOS.
  • Interfaz web moderna y rápida para escritorio o navegador.
  • Carga automática de fotos y vídeos desde tu móvil.
  • Puedes configurar carpetas específicas para subir (por ejemplo, solo la cámara o capturas de pantalla).
  • Puedes crear álbumesetiquetas y búsqueda por texto.
  • Reconocimiento automático de rostroslugares y objetos gracias a modelos de IA locales.
  • Soporte para mapas (geolocalización de las fotos).
  • Soporta múltiples usuarios.
  • Control de permisos y compartición entre cuentas.
  • Búsqueda por texto natural.
  • Reconocimiento facial y agrupación automática de personas.
  • Detección de duplicados.
  • Edición básica de metadatos EXIF.
  • Soporte de Live Photos (iOS) y vídeos.
  • Permite copias de seguridad y restauración.
  • Interfaz similar a Google Fotos, pero sin depender de la nube comercial.
  • Diseño moderno, rápido y con modo oscuro.

Cómo puedes instalar Immich

Hemos instalado Immich en un Mini PC con procesador Intel N150, 16 GB de RAM DDR4, 512 GB de almacenamiento SSD, wifi 6 y Bluetooth 5.2. La biblioteca externa está en un disco duro HDD. Así que los requerimientos no son excesivos. Lo único que tienes que tener en cuenta es que el procesamiento de fotos inicial, si tienes una biblioteca muy grande, puede durar 2 o 3 días. Los datos de Immich están en el disco duro SSD del PC. Puedes vigilar el rendimiento del disco en Linux con herramienta como HTOP.

Creas un directorio donde tú quieras, en mi caso lo he metido en el home de mi usuario principal en Linux Mint dentro de una carpeta llamada docker (/home/ivan/docker/immich), pero estoy pensando en cambiarlo a un disco NVMe que voy a instalar en mi mini PC:

mkdir ./immich
cd ./immich

Creas un archivo llamado docker-compose.yml con nano docker-compose.yml, y pones lo siguiente:

nano docker-compose.yml en tu servidor local con Linux Mint
#
# WARNING: To install Immich, follow our guide: https://immich.app/docs/install/docker-compose
#
# Make sure to use the docker-compose.yml of the current release:
#
# https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
#
# The compose file on main may not be compatible with the latest release.

name: immich

services:
  immich-server:
    container_name: immich_server
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    # extends:
    #   file: hwaccel.transcoding.yml
    #   service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
    volumes:
      # Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
      - ${UPLOAD_LOCATION}:/data
      - /etc/localtime:/etc/localtime:ro
      - /media/ivan/immich/libreriaexterna:/media/ivan/immich/libreriaexterna
    env_file:
      - .env
    ports:
      - '2283:2283'
    depends_on:
      - redis
      - database
    restart: unless-stopped
    healthcheck:
      disable: false

  immich-machine-learning:
    container_name: immich_machine_learning
    # For hardware acceleration, add one of -[armnn, cuda, rocm, openvino, rknn] to the image tag.
    # Example tag: ${IMMICH_VERSION:-release}-cuda
    image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
    # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
    #   file: hwaccel.ml.yml
    #   service: cpu # set to one of [armnn, cuda, rocm, openvino, openvino-wsl, rknn] for accelerated inference - use the `-wsl` version for WSL2 where applicable
    volumes:
      - model-cache:/cache
    env_file:
      - .env
    restart: unless-stopped
    healthcheck:
      disable: false

  redis:
    container_name: immich_redis
    image: docker.io/valkey/valkey:8-bookworm@sha256:fea8b3e67b15729d4bb70589eb03367bab9ad1ee89c876f54327fc7c6e618571
    healthcheck:
      test: redis-cli ping || exit 1
    restart: unless-stopped

  database:
    container_name: immich_postgres
    image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:8d292bdb796aa58bbbaa47fe971c8516f6f57d6a47e7172e62754feb6ed4e7b0
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
      POSTGRES_INITDB_ARGS: '--data-checksums'
      # Uncomment the DB_STORAGE_TYPE: 'HDD' var if your database isn't stored on SSDs
      # DB_STORAGE_TYPE: 'HDD'
    volumes:
      # Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file
      - ${DB_DATA_LOCATION}:/var/lib/postgresql/data
    shm_size: 128mb
    restart: unless-stopped

volumes:
  model-cache:
  • Recuerda que guardas el archivo con CRTL + O y que sales de nano con CRTL + X

¿Qué he añadido o cambiado?

  • – /media/ivan/immich/libreriaexterna:/media/ivan/immich/libreriaexterna: pongo esto en la sección volumes para que encuentre mi librería externa en un disco duro HDD.
    • Este es el primer paso. Consulta https://docs.immich.app/guides/external-library.
    • Cuando hagas login en Immich tienes que ir a Administration > External Libraries > Create Library, y añadir propietario, ruta a la librería y luego escanear la nueva librería de fotos. Puede tardar bastante.
  • He cambiado restart: always del archivo original por restart: unless-stopped en todos los sitios donde aparece. Cuando hago backup de los contenedores de Docker, quiero que todo esté parado y no se ponga en marcha inmediatamente.
  • Comprueba que no tienes en uso el puerto 2283. A partir de ahor alo va a usar Immich.

El resto de cosas hay que cambiarlas en el archivo .env que editas con nano .env.

# You can find documentation for all the supported env variables at https://immich.app/docs/install/environment-variables

# The location where your uploaded files are stored
# UPLOAD_LOCATION=./library
UPLOAD_LOCATION=/media/ivan/immich/uploads
# The location where your database files are stored. Network shares are not supported for the database
DB_DATA_LOCATION=./postgres

# To set a timezone, uncomment the next line and change Etc/UTC to a TZ identifier from this list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
TZ=Europe/Madrid

# The Immich version to use. You can pin this to a specific version like "v1.71.0"
IMMICH_VERSION=release

# Connection secret for postgres. You should change it to a random password
# Please use only the characters `A-Za-z0-9`, without special characters or spaces
DB_PASSWORD=postgres

# The values below this line do not need to be changed
###################################################################################
DB_USERNAME=postgres
DB_DATABASE_NAME=immich

¿Qué he cambiado?

  • UPLOAD_LOCATION=/media/ivan/immich/uploads: donde quieres subir tus nuevas fotos. Es importante que esta carpeta no esté dentro de tu librería externa, ya que puedes entrar en un bucle de escaneo de fotos que no va a terminar nunca (lo que me pasó la primera vez que instale Immich).
  • Pones dónde tienes el servidor: TZ=Europe/Madrid
  • DB_PASSWORD=postgres: lo cambias por una contraseña segura.

Ya puedes iniciar el contenedor:

docker compose up -d

¿Cómo actualizas Immich?

Afortunadamente, ya hemos llegado a su versión estable, Immich 2.0, por lo que las actualizaciones ya no son tan habituales. En todo caso, simplemente tienes que ir a la carpeta donde has puesto el docker-compose.yml en el terminal de Linux Mint y ejecutar estos comandos:

Actualizamos Immich en línea de comandos con docker compose.
docker compose pull && docker compose up -d

Si ves que no te funciona así, utiliza sudo:

sudo docker compose pull && sudo docker compose up -d

O tienes que añadir tu usuario al grupo Docker para que no te pida sudo con el comando:

sudo usermod -aG docker <tu_usuario>

Luego puedes borrar las imágenes que ya no se usan con:

docker image prune

¿Cómo haces un backup de Immich?

¡Ojo! Immich realiza copias de seguridad de manera automática de su base de datos Postgres que se almacenan en UPLOAD_LOCATION/backups. Estas copias de seguridad NO incluyen tus fotos, solo metadatos. Tenlo en cuenta. Deberías de hacer una copia de tus fotos en otro disco duro y en la nube (backup 3-2-1).

Siempre deberías hacer los backups de la base de datos cuando el contenedor está parado, para que no haya corrupción de la base de datos. Es importante tener una buena copia de seguridad de esta base de datos porque es donde Immich guarda las rutas a tu fotos.

El comando para hacer copia de seguridad de tu base de datos es:

docker exec -t immich_postgres pg_dumpall --clean --if-exists --username=<DB_USERNAME> | gzip > "/ruta/a/backup/dump.sql.gz"
  • Cambias el usuario <DB_USERNAME> a postgres.

Si quieres mantener varios archivos de backup por fechas:

sudo docker exec -t immich_postgres pg_dumpall --clean --if-exists --username=postgres | gzip > "/home/ivan/docker/immich/dump_$(date +%F_%H-%M).sql.gz"

¿Quieres recuperar el backup?

Mejor tener un backup general de Docker

Donde hacemos una copia de seguridad de /var/lib/docker/volumes (donde tienes todos los volúmenes persistentes de tus contenedores, donde Docker guarda los datos de tus aplicaciones: bases de datos (MySQL, PostgreSQL), uploads, configuraciones, etc. Es donde se encuentran también los datos de Portainer (GUI de Docker), y de la carpeta /home/tu_usuario_linux/docker (donde guardas tus archivos de configuración docker-compose.yml, archivos .env y otras carpetas de datos que has personalizado en tu archivo inicial de Docker Compose).

Cómo usar Immich: interfaz, configuración

Ahora toca entrar por primera vez en la interfaz de Immich en la url: http://ip_servidor_local:2283/ o en http://0.0.0.0:2283/ (mejor la primera para poder acceder desde cualquier dispositivo de tu red local).

Registramos el administrador en Immich

Registramos el administrador de Immich con usuario, correo y contraseña.

Te avisan de cómo funciona la plantilla de almacenamiento de las fotos que subes (el path que van a crear) y que crees copias de seguridad en formato 3-2-1.

Copias de seguridad de Immich: consejos

Ahora entras en la interfaz, puedes empezar a subir fotos, como yo añadir la biblioteca externa de fotos que tengo después de haber hecho un backup de mi biblioteca de iCloud.

Vas a Administration > External Libraries > Create Library, y le das a añadir propietario, ruta a la librería y luego escanear la nueva librería de fotos. Puede tardar bastante.

Ahora solo tienes que ir a Tareas (Jobs) en la barra izquierda, para ver cómo empieza a generar etiquetas, miniaturas, extraer metadatos, etc.

Configuramos Biblioteca externa en Immich: importamos todas nuestras fotos y miramos qué trabajos están activos.

En mi caso, con una biblioteca de unos 1.7 TB de fotos, tardo aproximadamente unos 2 días completos en extraer todos los datos. Ten en cuenta que las tareas concurrentes configuradas por defecto en Immich no son muchas. Puedes modificarlo en ajustes de concurrencia arriba a la derecha en esta pantalla (dependerá mucho de tu CPU y memoria RAM).

  • Con un Mini PC intel N150 y 16 GB de RAM, hemos dejado los parámetros por defecto. El servidor ha seguido funcionando, pero a veces todo iba mucho más lento (navegación, otras apps).

Suele tardar bastante en el descubrimiento de caras cuando hay muchas fotos (en micas o había unas 130.000 fotos). Puedes seguir estos pasos para acelerar el proceso de escaneo: https://docs.immich.app/guides/better-facial-clusters.

Vas a Admin > Administration > Settings > Machine Learning Settings y pones:

  • Maximum recognition distance: 0.4
  • Minimum recognized faces: (Por ejemplo, 20 para bibliotecas con una gran cantidad de archivos (~100 000+), y 10 para bibliotecas con una cantidad media de fotos (~40 000+)).

Vas a Admin > Administration > Settings > Jobs y reseteas Facial Recognition para que empiece otra vez.

Cuando termine todo, vuelves a cambiar estos parámetros:

  • Minimum recognized faces: 10 o 5

y FACIAL RECOGNITION > MISSING Mode.

Luego lo vuelves a bajar a 3 y empiezas de nuevo. Al final dejas los valores iniciales.

Menú de Administración > Ajustes y Ajustes de la cuenta

Una sección importante con una gran cantidad de secciones es el menú de ajustes. Puedes acceder a ella pinchando en el icono amarillo de arriba a la derecha y entrando en Administración:

Sección de ajustes de la app Immich

Las más relevantes pueden ser:

  • Ajustes de volcado de la base de datos: puedes configurar a qué hora se hace el backup automático de la bbdd (por la noche mejor).
  • Biblioteca Externa: Configurarás el escaneo de la biblioteca externa.
  • Configuración de aprendizaje automático: importante para cosas como la que hemos hecho antes.
  • Configuración de metadatos: puedes activar la importación de caras desde los metadatos EXIF
  • Plantilla de almacenamiento: lo que te ha preguntado en la configuración. Lo puedes cambiar aquí.
  • Configuración de transcodificación de vídeo: si tienes muchos videos, es relevante para evitar retrasos en cómo sirve Immich los videos en diferentes dispositivos.

También puedes acceder a Ajustes de la cuenta (también arriba a la derecha enel icono amarillo):

Ajustes de la cuenta en Immich

Aquí puedes cambiar datos de tu usuario, administrar claves API, cambiar contraseñas, notificaciones, autorizar dispositivos o cambiar ajustes de la app (idioma, tema, vídeos en bucle).

Sección de Utilidades

También merece la pena entrar en la sección de la barra de la izquierda llamada Utilidades, donde puedes revisar duplicados, archivos grandes o administrar la ubicación de tus fotos.

Utillidades de Immich como buscar fotos duplicadas.

La más útil es la búsqueda de duplicados, donde puedes ir revisando una a una todas las fotos que considera que son iguales.

Gestión de duplicados en Immich

Cómo puedes ver, nos dice que tenemos más de 12.000 duplicados. Se te quitan las ganas de comprobarlo.

¿Qué te queda por hacer? Además de instalar la app de Tail scale para poder acceder a Immich desde fuera de tu red local, tienes que descargar algunas de sus apps para móviles (iOS o Android) y poner los datos de tu servidor.

Te van a permitir sincronizar las fotos de tu smartphone con tu servidor local, y la verdad es que por lo menos la de iOS funciona muy bien.

Interfaz de Immich con carrusel de fotos. Instalado en un mini PC Intel N150.

¿Dónde deberías poner tu biblioteca de fotos? La biblioteca de fotos suele estar bien en un disco duro externo HDD, que, aunque más lento, suele ser muy fiable a largo plazo. ¿Y la instalación de Immich? Todas las bases de datos deberían estar en un disco SSD Sata o en uno NVMe. La carpeta de uploads de Immich puedes dejarla también en un disco externo HDD o conectar un nuevo disco NMVe para aprovechar su velocidad a tu Mini PC (si tienes ranuras libres), siempre teniendo en cuenta que estos discos tienen una vida media más corta (vigílalos con Scrutiny, un monitor de salud de discos que puedes instalar también en Docker y que te alertará de posibles fallos en tus SSD/HDD). Ten siempre una copia de seguridad de todas tus fotos y datos de instalación. Linux Mint tiene programas como TimeShift o comandos como rsync que son perfectos para hacer este trabajo. Puedes programar backups automáticos con crontab + rsync o usar la herramienta de Copias de Seguridad de Linux Mint.

Algunos errores que te puedes encontrar

Errores de permisos: Uno de los problemas más frecuentes al instalar Immich son los errores de permisos entre el contenedor Docker y el sistema de archivos de tu servidor local. Cuando Immich intenta acceder a tus carpetas de fotos en discos externos, puede que no tenga los permisos necesarios. Esto ocurre porque el usuario dentro del contenedor (generalmente root) no tiene permisos para leer/escribir en tus directorios montados.

Solamente tienes que:

sudo chmod -R 755 /ruta/a/tus/fotos
sudo chown -R tu_usuario:tu_usuario /ruta/a/tus/fotos

También te puedes encontrar con que Immich no vea las fotos por un error en el mapeo de los volúmenes. Verifica que las rutas en los volúmenes sean absolutas y existan y estén bien configuradas en el docker-compose.yml o en el .env.

Conclusión

Como puedes ver, Immich ha llegado a un estado de madurez con su versión 2.0 que ya nos permite planearnos dejar los servicios de Google, Apple o Amazon. Y lo mejor de todo es que te ofrece apps iOS y Android que se conectan a tu servidor local para poder hacer backup de fotos de tu smartphone, tal y como hacen los servicios online más importantes.

Si combinas Immich con servicios gratuitos como Tailscale para conectarte a tu servidor local desde fuera de tu casa, vas a poder usar esta app como si fuera Google Fotos.

Solo tienes que hacerte con un buen Mini PC, un par de discos duros fiable para guardar tus fotos y organizar un backup 3-2-1 para que tus fotos estén siempre a salvo.

  • Ya que has instalado Immich para tus fotos, no te olvides que puedes instalar Navidrome para gestionar tu biblioteca musical en tu servidor local.

Ventajas frente a Google Fotos

  • No comparte tus datos con terceros. Mejor privacidad.
  • No hay límites de almacenamiento más allá de tu propio servidor.
  • No requiere suscripción.
  • Puede personalizarse y conectarse con otros servicios locales.
  • Reconocimiento facial y búsqueda inteligente
  • Gran interfaz
  • Apps iOS, Android

Desventajas

  • Necesita conocimientos básicos de servidores (Docker, backups).
  • No ofrece almacenamiento en la nube por defecto (debes tener tu propio espacio).
  • Algunas funciones de IA requieren más recursos (CPU/GPU).

Descubre más desde Gouforit.com

Suscríbete y recibe las últimas entradas en tu correo electrónico.

Foto del autor

Ivan Benito

Apasionado de la física, la lectura y los viajes, experto en tecnología e informática y fan de los relojes Casio, de los Mac y de los auriculares Sennheiser. Desde el año 2007 me he dedicado a escribir y a crear páginas web donde comparto mis conocimientos y reviews de productos. Si tienes alguna duda y necesitas ayuda... ¡Pregúntame!

Si quieres estar al tanto de los mejores productos tecnológicos del año, no te puedes perder nuestras comparativas, opiniones y análisis de dispositivos tecnológicos. ¡No te los pierdas! Gouforit es soportado por sus lectores. El equipo de editores solo selecciona las mejores opciones mediante reviews independientes. Algunos enlaces del artículo son afiliados: pueden generar un beneficio a Gouforit. Este sitio solo proporciona reseñas; no vendemos productos directamente. Saber más.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.