Logo RedesZone
Navega gratis con cookies…

Navegar por redeszone.net con publicidad personalizada, seguimiento y cookies de forma gratuita. i

Para ello, nosotros y nuestros socios i necesitamos tu consentimiento i para el tratamiento de datos personales i para los siguientes fines:

Las cookies, los identificadores de dispositivos o los identificadores online de similares características (p. ej., los identificadores basados en inicio de sesión, los identificadores asignados aleatoriamente, los identificadores basados en la red), junto con otra información (p. ej., la información y el tipo del navegador, el idioma, el tamaño de la pantalla, las tecnologías compatibles, etc.), pueden almacenarse o leerse en tu dispositivo a fin de reconocerlo siempre que se conecte a una aplicación o a una página web para una o varias de los finalidades que se recogen en el presente texto.

La mayoría de las finalidades que se explican en este texto dependen del almacenamiento o del acceso a la información de tu dispositivo cuando utilizas una aplicación o visitas una página web. Por ejemplo, es posible que un proveedor o un editor/medio de comunicación necesiten almacenar una cookie en tu dispositivo la primera vez que visite una página web a fin de poder reconocer tu dispositivo las próximas veces que vuelva a visitarla (accediendo a esta cookie cada vez que lo haga).

La publicidad y el contenido pueden personalizarse basándose en tu perfil. Tu actividad en este servicio puede utilizarse para crear o mejorar un perfil sobre tu persona para recibir publicidad o contenido personalizados. El rendimiento de la publicidad y del contenido puede medirse. Los informes pueden generarse en función de tu actividad y la de otros usuarios. Tu actividad en este servicio puede ayudar a desarrollar y mejorar productos y servicios.

La publicidad que se presenta en este servicio puede basarse en datos limitados, tales como la página web o la aplicación que esté utilizando, tu ubicación no precisa, el tipo de dispositivo o el contenido con el que está interactuando (o con el que ha interactuado) (por ejemplo, para limitar el número de veces que se presenta un anuncio concreto).

  • Un fabricante de automóviles quiere promocionar sus vehículos eléctricos a los usuarios respetuosos con el medioambiente que viven en la ciudad fuera del horario laboral. La publicidad se presenta en una página con contenido relacionado (como un artículo sobre medidas contra el cambio climático) después de las 18:30 h a los usuarios cuya ubicación no precisa sugiera que se encuentran en una zona urbana.
  • Un importante fabricante de acuarelas quiere realizar una campaña publicitaria en Internet para dar a conocer su última gama de acuarelas con la finalidad de llegar tanto a artistas aficionados como a profesionales y, a su vez, se evite mostrar el anuncio junto a otro contenido no relacionado (por ejemplo, artículos sobre cómo pintar una casa). Se detectará y limitará el número de veces que se ha presentado el anuncio a fin de no mostrarlo demasiadas veces.

La información sobre tu actividad en este servicio (por ejemplo, los formularios que rellenes, el contenido que estás consumiendo) puede almacenarse y combinarse con otra información que se tenga sobre tu persona o sobre usuarios similares(por ejemplo, información sobre tu actividad previa en este servicio y en otras páginas web o aplicaciones). Posteriormente, esto se utilizará para crear o mejorar un perfil sobre tu persona (que podría incluir posibles intereses y aspectos personales). Tu perfil puede utilizarse (también en un momento posterior) para mostrarte publicidad que pueda parecerte más relevante en función de tus posibles intereses, ya sea por parte nuestra o de terceros.

  • En una plataforma de redes sociales has leído varios artículos sobre cómo construir una casa en un árbol Esta información podría añadirse a un perfil determinado para indicar tuinterés en el contenido relacionado con la naturaleza, así como en los tutoriales de bricolaje (con el objetivo de permitir la personalización del contenido, de modo que en el futuro, por ejemplo, se te muestren más publicaciones de blogs y artículos sobre casas en árboles y cabañas de madera).
  • Has visualizado tres vídeos sobre la exploración espacial en diferentes aplicaciones de televisión. Una plataforma de noticias sin relación con las anteriores y con la que no has tenido contacto en el pasado crea un perfil basado en esa conducta de visualización marcando la exploración del espacio como un tema de tu posible interés para para otros vídeos.

El contenido que se te presenta en este servicio puede basarse en un perfilde personalización de contenido que se haya realizado previamente sobre tu persona, lo que puede reflejar tu actividad en este u otros servicios (por ejemplo, los formularios con los que interactúas o el contenido que visualizas), tus posibles intereses y aspectos personales. Un ejemplo de lo anterior sería la adaptación del orden en el que se te presenta el contenido, para que así te resulte más sencillo encontrar el contenido (no publicitario) que coincida con tus intereses.

  • Has leído unos artículos sobre comida vegetariana en una plataforma de redes sociales. Posteriormente has usado una aplicación de cocina de una empresa sin relación con la anterior plataforma. El perfil que se ha creado sobre tu persona en la plataforma de redes sociales se utilizará para mostrarte recetas vegetarianas en la pantalla de bienvenida de la aplicación de cocina.
  • Has visualizado tres vídeos sobre remo en páginas web diferentes. Una plataforma de video, no relacionada con la página web en la que has visualizado los vídeos sobre remo, pero basandose en el perfil creado cuando visistaste dicha web, podrá recomendarte otros 5 vídeos sobre remo cuando utilices la plataforma de video a través de tu televisor .

La información sobre qué publicidad se te presenta y sobre la forma en que interactúas con ella puede utilizarse para determinar lo bien que ha funcionado un anuncio en tu caso o en el de otros usuarios y si se han alcanzado los objetivos publicitarios. Por ejemplo, si has visualizado un anuncio, si has hecho clic sobre el mismo, si eso te ha llevado posteriormente a comprar un producto o a visitar una página web, etc. Esto resulta muy útil para comprender la relevancia de las campañas publicitarias.

  • Has hecho clic en un anuncio en una página web/medio de comunicación sobre descuentos realizados por una tienda online con motivo del “Black Friday” online y posteriormente has comprado un producto. Ese clic que has hecho estará vinculado a esa compra. Tu interacción y la de otros usuarios se medirán para saber el número de clics en el anuncio que han terminado en compra.
  • Usted es una de las pocas personas que ha hecho clic en un anuncio que promociona un descuento por el “Día de la madre”de una tienda de regalos en Internet dentro de la aplicación de una web/medio de comunicación. El medio de comunicación quiere contar con informes para comprender con qué frecuencia usted y otros usuarios han visualizado o han hecho clic en un anuncio determinado dentro de la aplicación y, en particular, en el anuncio del “Día de la madre” para así ayudar al medio de comunicación y a sus socios (por ejemplo, las agencias de publicidad) a optimizar la ubicación de los anuncios.

La información sobre qué contenido se te presenta y sobre la forma en que interactúas con él puede utilizarse para determinar, por ejemplo, si el contenido (no publicitario) ha llegado a su público previsto y ha coincidido con sus intereses. Por ejemplo, si hasleído un artículo, si has visualizado un vídeo, si has escuchado un “pódcast” o si has consultado la descripción de un producto, cuánto tiempo has pasado en esos servicios y en las páginas web que has visitado, etc. Esto resulta muy útil para comprender la relevancia del contenido (no publicitario) que se te muestra.

  • Has leído una publicación en un blog sobre senderismo desde la aplicación móvil de un editor/medio de comunicación y has seguido un enlace a una publicación recomendada y relacionada con esa publicación. Tus interacciones se registrarán para indicar que la publicación inicial sobre senderismo te ha resultado útil y que la misma ha tenido éxito a la hora de ganarse tu interés en la publicación relacionada. Esto se medirá para saber si deben publicarse más contenidos sobre senderismo en el futuro y para saber dónde emplazarlos en la pantalla de inicio de la aplicación móvil.
  • Se te ha presentado un vídeo sobre tendencias de moda, pero tu y otros usuarios habéis dejado de visualizarlo transcurridos unos 30 segundos. Esta información se utilizará para valorar la duración óptima de los futuros vídeos sobre tendencias de moda.

Se pueden generar informes basados en la combinación de conjuntos de datos (como perfiles de usuario, estadísticas, estudios de mercado, datos analíticos) respecto a tus interacciones y las de otros usuarios con el contenido publicitario (o no publicitario) para identificar las características comunes (por ejemplo, para determinar qué público objetivo es más receptivo a una campaña publicitaria o a ciertos contenidos).

  • El propietario de una librería que opera en Internet quiere contar con informes comerciales que muestren la proporción de visitantes que han visitado su página y se han ido sin comprar nada o que han consultado y comprado la última autobiografía publicada, así como la edad media y la distribución de género para cada uno de los dos grupos de visitantes. Posteriormente, los datos relacionados con la navegación que realizas en su página y sobre tus características personales se utilizan y combinan con otros datos para crear estas estadísticas.
  • Un anunciante quiere tener una mayor comprensión del tipo de público que interactúa con sus anuncios. Por ello, acude a un instituto de investigación con el fin de comparar las características de los usuarios que han interactuado con el anuncio con los atributos típicos de usuarios de plataformas similares en diferentes dispositivos. Esta comparación revela al anunciante que su público publicitario está accediendo principalmente a los anuncios a través de dispositivos móviles y que es probable que su rango de edad se encuentre entre los 45 y los 60 años.

La información sobre tu actividad en este servicio, como tu interacción con los anuncios o con el contenido, puede resultar muy útil para mejorar productos y servicios, así como para crear otros nuevos en base a las interacciones de los usuarios, el tipo de audiencia, etc. Esta finalidad específica no incluye el desarrollo ni la mejora de los perfiles de usuario y de identificadores.

  • Una plataforma tecnológica que opera con un proveedor de redes sociales observa un crecimiento en los usuarios de aplicaciones móviles y se da cuenta de que, en funciónde sus perfiles, muchos de ellos se conectan a través de conexiones móviles. La plataforma utiliza una tecnología nueva para mostrar anuncios con un formato óptimo para los dispositivos móviles y con un ancho de banda bajo a fin de mejorar su rendimiento.
  • Un anunciante está buscando una forma de mostrar anuncios en un nuevo tipo de dispositivo. El anunciante recopila información sobre la forma en que los usuarios interactúan con este nuevo tipo de dispositivo con el fin de determinar si puede crear un nuevo mecanismo para mostrar la publicidad en ese tipo de dispositivo.

El contenido que se presenta en este servicio puede basarse en datos limitados, como por ejemplo la página web o la aplicación que esté utilizando, tu ubicación no precisa, el tipo de dispositivo o el contenido con el que estás interactuando (o con el que has interactuado) (por ejemplo, para limitar el número de veces que se te presenta un vídeo o un artículo en concreto).

  • Una revista de viajes, para mejorar las experiencias de viaje en el extranjero, ha publicado en su página web un artículo sobre nuevos cursos que ofrece una escuela de idiomas por Internet. Las publicaciones del blog de la escuela se insertan directamente en la parte inferior de la página y se seleccionan en función de la ubicación no precisa del usuario (por ejemplo, publicaciones del blog que explican el plan de estudios del curso para idiomas diferentes al del país en el que este te encuentras).
  • Una aplicación móvil de noticias deportivas ha iniciado una nueva sección de artículos sobre los últimos partidos de fútbol. Cada artículo incluye vídeos alojados por una plataforma de streaming independiente que muestra los aspectos destacados de cada partido. Si adelantas un vídeo, esta información puede utilizarse para determinar que el siguiente vídeo a reproducir sea de menor duración.

Se puede utilizar la localización geográfica precisa y la información sobre las características del dispositivo

Al contar con tu aprobación, tu ubicación exacta (dentro de un radio inferior a 500 metros) podrá utilizarse para apoyar las finalidades que se explican en este documento.

Con tu aceptación, se pueden solicitar y utilizar ciertas características específicas de tu dispositivo para distinguirlo de otros (por ejemplo, las fuentes o complementos instalados y la resolución de su pantalla) en apoyo de las finalidades que se explican en este documento.

O sin cookies desde 1.67€ al mes

Por solo 1.67 al mes, disfruta de una navegación sin interrupciones por toda la red del Grupo ADSLZone: adslzone.net, movilzona.es, testdevelocidad.es, lamanzanamordida.net, hardzone.es, softzone.es, redeszone.net, topesdegama.com y más. Al unirte a nuestra comunidad, no solo estarás apoyando nuestro trabajo, sino que también te beneficiarás de una experiencia online sin publicidad ni cookies de seguimiento.

Immich: la alternativa a Google Fotos que tengo en mi NAS y cómo instalarla

Síguenos

Si estás buscando sustituir Google Fotos para no pagar la suscripción de Google One, la mejor alternativa que tienes ahora mismo y que es compatible con cualquier servidor NAS que soporte Docker, es el popular software Immich. Este software nos permitirá montarnos una completa galería de fotos y vídeos en local, nos permitirá realizar copias de seguridad de las fotos del móvil usando la aplicación oficial, podemos organizar todo el contenido en álbumes, realizar búsquedas avanzadas de nombres o sitios, e incluso podemos mostrar un mapa para ver todas las fotos relacionadas con un determinado lugar. Si quieres conocer todas las características, requisitos, cómo se instala y configura, en RedesZone os vamos a explicar todo en detalle.

Si tienes un NAS comercial como QNAP, Synology o UGREEN, debes saber que cada marca dispone de su propio software para gestionar las fotos y vídeos de forma más inteligente, sin necesidad de recurrir a softwares de terceros. Lo bueno de Immich es que es compatible con cualquier marca, ya que se instala sobre Docker como contenedor, por lo que, si cambiamos de una marca a otra, podremos seguir usándolo sin problemas, a diferencia de las aplicaciones privadas de cada marca.

 

Características y requisitos de instalación

Immich es el software por excelencia para sustituir a Google Fotos, de hecho, tenemos el mismo diseño vía web y casi las mismas funcionalidades. Las características más destacadas de este software son las siguientes:

  • Vamos a poder subir las fotos fácilmente tanto vía web como con la app oficial para smartphones.
  • Podemos configurar una copia de seguridad de la carpeta DCIM (fotos y vídeos) de nuestro smartphone, para así enviarla siempre a nuestro NAS y que esté disponible para los demás si es que lo compartimos.
  • Gestión de todas las fotos y vídeos de forma rápida y fácil.
  • Creación de álbumes con las fotos elegidas, para tener una organización de todas las fotos y vídeos.
  • Podemos configurar metadatos y etiquetas para mejorar una futura búsqueda de las fotos.
  • Realizar búsquedas avanzadas por lugares donde hemos estado, por geolocalización usando los metadatos de las fotos.
  • Reconocimiento facial de personas, para posteriormente hacer búsquedas avanzadas por personas ya que también tenemos reconocimiento facial.
  • Podemos marcar fotos y vídeos como favoritos, para que aparezcan en una sección exclusiva de «Favoritos».
  • Compartir fotos y vídeos, e incluso álbumes enteros con otras personas, sin necesidad de que tengan que crearse una cuenta de usuario. De hecho, podemos crear un álbum específico para compartir con las fotos y vídeos que queramos.

Otras características de Immich son que dispone de múltiples opciones de configuración y ajustes, también podemos ver estadísticas de visualización de fotos y vídeos, así como subidas, podemos crear claves API para conectarlo con otras aplicaciones y que tengan diferentes permisos, así como configurar notificaciones de cuando hay subidas, poner una contraseña o PIN para acceder a determinado contenido, y también administrar el uso compartido con otros usuarios de forma avanzada. Para acelerar la carga de todas las fotografías subidas, se generarán miniaturas de forma completamente automática. Otras funciones son las de extraer los metadatos de las fotos que hayamos subido, detectar archivos duplicados, detección mediante OCR de textos, transcodificación de vídeos y algunos ajustes de imagen e integridad avanzados.

Las aplicaciones de Immich para los sistemas operativos de Android y de iOS están disponibles en sus tiendas oficiales:

Immich
Immich
DEVELOPER:   altran1502
DESCARGAR
googleplay logo

Con esta aplicación, podrás controlar todo el software desde el móvil de forma fácil y rápida.

 

Requisitos hardware

Immich es una aplicación muy completa y dispone de múltiples opciones avanzadas, como el reconocimiento facial, reconocimiento de texto mediante OCR y mucho más. Por este motivo, los requisitos de hardware son bastante exigentes, así que debes tenerlo en cuenta.

  • CPU: es necesario como mínimo 2 núcleos de procesador (Dual-Core), aunque es recomendable que tengamos 4 núcleos de procesador (Quad-Core). Immich solo funciona en procesadores amd64 y arm64. Desde la versión 3, el contenedor de machine learning en amd64 exige el nivel de microarquitectura x86-64-v2, que soportan la mayoría de CPU lanzadas desde 2012. Si tu NAS no lo cumple, la última versión compatible es la v2.7.5, que ya no recibe soporte.
  • RAM: es necesario como mínimo 6GB de memoria RAM, pero es recomendable que sean 8GB para que todo funcione con fluidez. Para garantizar el funcionamiento fluido durante la carga de archivos se requiere esta cantidad de RAM; no obstante, también podría funcionar con 4GB de RAM, pero deshabilitando las funciones de «Machine learning» como el reconocimiento facial, etc. Si limitamos los recursos de los contenedores en Docker, hay que reservar al menos 2 GB de RAM para la base de datos Postgres.
  • Almacenamiento: es recomendable usar un sistema de archivos compatible con Unix, como EXT4, ZFS o Btrfs, así como asignar los correspondientes permisos necesarios para leer y escribir en él. Un aspecto importante es que la generación de miniaturas y la transcodificación de los vídeos puede aumentar el tamaño necesario en un 10% o 20% adicional. En un programa como Immich es fundamental que la velocidad de lectura aleatoria sea rápida; por este motivo, se recomienda usar unidades SSD para acelerar esta velocidad lo máximo posible.

Como podéis ver, los requisitos para utilizar Immich son bastante exigentes, sobre todo en lo que se refiere a memoria RAM, porque lo habitual en un NAS doméstico son solo 8 GB para todo el sistema operativo y los modelos más avanzados tienen hasta 16 GB como máximo.

 

Requisitos software

En cuanto a los requisitos de software, lo único que debemos tener claro es que necesitaremos Docker para poder utilizarlo, con el plugin de Docker Compose que generalmente tenemos siempre instalado. No obstante, en el caso de no tenerlo instalado, es obligatorio ponerlo ya que se usará para la instalación de todo el software necesario. Gracias a que solamente necesitamos el requisito de Docker, cualquier sistema operativo de NAS que tenga esta funcionalidad nos permitirá instalar Immich sin ningún problema.

Otra opción es que podemos usar Immich en un clúster con Kubernetes, tenemos soporte para este software, por lo que también podemos usarlo con base de Kubernetes sin problemas.

 

Instalación y puesta en marcha

La instalación de Immich se realiza mediante un archivo de Docker Compose y otro archivo .env donde tendremos las variables de entorno con información de la base de datos, y también las contraseñas para la autenticación en dicha base de datos.

El contenido del archivo Docker Compose (en octubre de 2026) es el siguiente, aunque siempre es recomendable descargar la última versión disponible desde GitHub como os hemos indicado antes:

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
env_file:
- .env
ports:
- '2283:2283'
depends_on:
- redis
- database
restart: always
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://docs.immich.app/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: always
healthcheck:
disable: false
redis:
container_name: immich_redis
image: docker.io/valkey/valkey:9@sha256:c123e3715db63d06d4ad6964884037aa0d5d4d703939b9929954112889708e1d
healthcheck:
test: redis-cli ping | grep -q PONG || exit 1
restart: always
database:
container_name: immich_postgres
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:bcf63357191b76a916ae5eb93464d65c07511da41e3bf7a8416db519b40b1c23
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: always
healthcheck:
disable: false
volumes:
model-cache:

El contenido del archivo .env (en octubre de 2026) es el siguiente, aunque siempre es recomendable descargar la última versión disponible desde GitHub como os hemos indicado antes:

# The location where your uploaded files are stored
UPLOAD_LOCATION=./library
# 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=Etc/UTC
# The Immich version to use. You can pin this to a specific version like "v2.1.0"
IMMICH_VERSION=v3
# 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

Lo más habitual cuando tenemos Docker en un servidor NAS es que también tengamos instalado Portainer, que es el gestor de dockers por excelencia, y todo ello con una interfaz gráfica de usuario fácil de entender. Gracias a Portainer, podemos iniciar, parar, reanudar e incluso editar los contenedores que tenemos en funcionamiento. También podremos levantar un «stack» con varios contenedores Docker, básicamente es copiar el Docker compose y desplegarlo. En la web oficial de Immich tenemos una guía de instalación con Portainer, y justamente es la que seguiremos nosotros para la instalación y puesta en marcha, no obstante, también tenemos un tutorial específico para Synology (usando Container Manager), QNAP (usando Container Station), TrueNAS (con el Docker nativo) y otros sistemas operativos para NAS.

En este tutorial vamos a usar un servidor NAS de QNAP donde ya tenemos instalado Portainer, y vamos a crear el «stack» con todo el software necesario para ello.

En Portainer nos vamos a «Stacks», y en «Create stack» le damos un nombre identificativo, y en la sección de «web editor» pegaremos el código de Docker-Compose.

Interfaz de Portainer en la sección Create stack con el editor web abierto para configurar Immich.
Interfaz del panel Portainer.io durante la creación de un nuevo stack mediante el editor web, mostrando el código YAML necesario para la instalación de Immich. Foto: Captura propia de RedesZone

El código de Docker Compose es el original que nos proporciona Immich, pero hemos cambiado dos cosas importantes:

  • Cambiamos «env_file:» a «- stack.env» porque Portainer gestiona las variables de entorno de forma centralizada en el stack, lo que facilita las actualizaciones sin editar el archivo .env manualmente.
  • Añadimos un volumen fijo para la caché (${CACHE_LOCATION}:/cache) en lugar de usar un volumen anónimo de Docker, para asegurarnos de que los modelos de machine learning se almacenan en nuestro rápido almacenamiento SSD y no se pierden al recrear el contenedor.

El código es el siguiente:

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
env_file:
- stack.env
ports:
- '2283:2283'
depends_on:
- redis
- database
restart: always
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://docs.immich.app/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:
- ${CACHE_LOCATION}:/cache
env_file:
- stack.env
restart: always
healthcheck:
disable: false
redis:
container_name: immich_redis
image: docker.io/valkey/valkey:9@sha256:c123e3715db63d06d4ad6964884037aa0d5d4d703939b9929954112889708e1d
healthcheck:
test: redis-cli ping | grep -q PONG || exit 1
restart: always
database:
container_name: immich_postgres
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:bcf63357191b76a916ae5eb93464d65c07511da41e3bf7a8416db519b40b1c23
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: always
healthcheck:
disable: false

Al cargar el archivo .env con las variables de entorno, veremos que importará solamente lo importante, y no los comentarios:

Interfaz de Portainer.io mostrando el formulario de variables de entorno para la configuración de Immich.
Interfaz del panel Portainer.io durante la creación de un nuevo stack mediante el editor web, mostrando el código YAML necesario para la instalación de Immich. Foto: Captura propia de RedesZone

Panel de edición de variables de entorno en Portainer.io durante el proceso de instalación manual de Immich. Foto: Captura propia de RedesZoneEl archivo de configuración cargado es el siguiente:

# You can find documentation for all the supported env variables at https://docs.immich.app/install/environment-variables
# The location where your uploaded files are stored
UPLOAD_LOCATION=/share/MaquinasVirtuales/Docker/immich/
CACHE_LOCATION=/share/MaquinasVirtuales/Docker/immich/cache/
# The location where your database files are stored. Network shares are not supported for the database
DB_DATA_LOCATION=/share/MaquinasVirtuales/Docker/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 "v2.1.0"
IMMICH_VERSION=v3
# 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=postgresclave
# The values below this line do not need to be changed
###################################################################################
DB_USERNAME=postgres
DB_DATABASE_NAME=immichbd

Una vez que hayamos copiado todo, pinchamos en «Deploy stack» y esperamos unos segundos hasta que se descarguen las imágenes, se creen y se levanten todas correctamente. Este proceso tardará más o menos tiempo, pero en uno o dos minutos debería estar funcionando. Al entrar en la sección del «Stack» recién configurado, veremos que todos los contenedores están en verde.

En estos momentos ya tenemos Immich funcionando, podemos entrar a través de la IP del NAS y usando el puerto 2283 que es el predeterminado. Immich utiliza por defecto HTTP para las conexiones, así que, si vas a conectarte de forma remota a través de Internet, deberías usar diferentes métodos para conectarte de forma segura, porque tanto la autenticación como todos los datos se hacen sin cifrado.

 

Opciones de configuración disponibles

Lo primero que debemos hacer para entrar en Immich es poner la dirección IP de nuestro NAS, seguido del puerto 2283 que es el predeterminado donde accederemos a la administración, y por donde nos conectaremos a este popular servicio que sustituye a Google Fotos. Si es la primera vez que accedes, nos aparecerá un asistente de configuración paso a paso, no obstante, también nos permitirá restaurar todos los datos de una copia de seguridad anterior, por si acaso cambias de servidor NAS.

Pantalla de bienvenida de Immich en un navegador web con el botón para comenzar la configuración.
Vista del asistente de configuración inicial de Immich tras completar la instalación manual en el servidor. Foto: Captura propia de RedesZone

Immich se gestiona completamente a través de la interfaz gráfica de usuario, no hay que ejecutar ningún tipo de comandos ni tampoco realizar complicadas configuraciones.

 

Asistente de configuración

En el primer menú del asistente tenemos que pinchar sobre «Comenzamos» para empezar con el asistente, después tenemos que introducir los datos del administrador del sistema. Los datos que nos pide Immich son el correo electrónico, una contraseña y también un nombre para identificar al usuario, una vez configurado, nos pedirá iniciar sesión con los datos que acabamos de introducir.

Al iniciar sesión nos dará la bienvenida, pinchamos en «Tema» y procedemos a elegir el tema claro o el tema oscuro, después elegiremos el idioma de la interfaz gráfica de usuario, si queremos compartir datos con Immich para su desarrollo y también qué plantilla queremos usar para las fotografías subidas. Esta opción la podemos cambiar más adelante, básicamente podemos no elegir ninguna plantilla, aunque lo lógico sería elegir una plantilla para tenerlo todo bien ordenado por fecha, o una estructura personalizada.

Las copias de seguridad son fundamentales en Immich, el propio asistente nos recomienda el esquema de copias de seguridad 3-2-1 que básicamente son 3 copias de todos los datos, una copia fuera del sitio y 2 copias locales. También nos recomendará instalar la aplicación móvil para visualizar todas las fotos y realizar las subidas desde el smartphone.

Una vez que terminemos el asistente de configuración, nos llevará al menú principal donde podremos ver un aspecto muy similar a Google Fotos.

 

Menú principal

En el menú principal podemos ver en la zona de la izquierda todas las opciones para interactuar con el servidor de fotos privado, desde ahí podemos acceder a las fotos, explorar las nuevas subidas, ver un mapa, los álbumes compartidos, así como también todas las fotos favoritas, los álbumes, ir a las utilidades, ver las fotos archivadas, las carpetas protegidas, así como la papelera. En la zona superior derecha podemos subir las fotos, cambiar el tema oscuro y claro, así como las notificaciones y también ir a todas las opciones de configuración avanzadas.

Interfaz de la aplicación Immich mostrando la pantalla principal de fotos vacía con un botón para subir archivos.
Vista general del panel de control de Immich tras la instalación, donde se gestionan la biblioteca de fotos, álbumes y el almacenamiento disponible. Foto: Captura propia de RedesZone

Si subimos una carpeta con archivos, debemos tener en cuenta que Immich solamente soporta formatos de fotos y vídeos, por lo que no podemos subir archivos PDF, documentos de Word o presentaciones PowerPoint. No nos dará error la subida entera, simplemente nos aparecerá una advertencia indicando que no se puede subir.

Panel de control de Immich con notificaciones de advertencia laterales y estadísticas de almacenamiento en el escritorio.
Vista del panel principal de Immich donde se muestran alertas del sistema y el estado del almacenamiento durante el proceso de configuración. Foto: Captura propia de RedesZone

Mientras realizamos la subida, el procesador del NAS se pondrá casi al máximo de funcionamiento, el motivo es que Immich no solamente tendrá que gestionar la subida de las fotos, también se activa automáticamente la generación de miniaturas, el reconocimiento facial, reconocimiento OCR, etc. Por este motivo, mientras subimos las fotos, notaremos un alto consumo de procesador del NAS.

Una vez que se haya subido todo, podemos ver que la CPU del NAS sigue cerca del 100% de uso, el motivo es justamente el mismo, después de la subida se inicia un proceso interno de tratamiento de las fotos. Dependiendo del número de fotos que subamos, su tamaño, metadatos y otra información de la foto, este proceso tardará más o menos tiempo.

En la sección de «Fotos» podemos ver todas las fotos subidas por orden cronológico, también podemos ver en «Explorar» las últimas subidas que hemos realizado. Si las fotos tienen metadatos de GPS, como las que hacemos con el smartphone, nos los mostrará en el mapa del propio Immich.

Si nos vamos a álbumes podemos ver todos los que hay creados, y también podemos crear nuevos seleccionando las fotos que nosotros queramos de las que ya hay subidas, o bien fotos nuevas que solamente subiremos a este álbum. Luego más adelante podríamos compartir este álbum con quien queramos.

En el menú de «Utilidades» podemos ver que tenemos la posibilidad de revisar duplicados, revisar archivos grandes y administrar la ubicación GPS de las diferentes fotos, por si no hay metadatos o están equivocados.

En el menú de «Flujos de trabajo» tenemos la posibilidad de realizar automatizaciones cuando subamos las fotos a la plataforma en la nube privada. Por ejemplo, algunas automatizaciones que podemos realizar son poner etiquetas, agregar las fotos a un álbum de forma automática, filtrar los metadatos EXIF y muchas más acciones que podemos realizar para tratar las fotografías.

También tenemos la posibilidad de instalar Obtainium para instalar y actualizar la aplicación de Android directamente desde GitHub, sin usar Google Play. Por supuesto, tenemos la posibilidad de poner una contraseña para las fotos protegidas por clave.

Como podéis ver, tenemos una gran cantidad de opciones de cara al uso normal de este sistema de fotos privado, pero donde más destaca Immich por encima de otras alternativas como las propias de los fabricantes de NAS, es en los ajustes avanzados que podemos realizar.

Si entramos en una fotografía, podemos ver la propia foto y en la zona superior derecha veremos todas las acciones que podemos realizar:

  • Compartir la foto con otra persona.
  • Hacer zoom.
  • Descargar la foto en el PC local.
  • Ver la información de la foto como la resolución.
  • Ponerla como foto favorita.
  • Ajustes de la foto.
  • Eliminar la foto.

Algunas opciones adicionales que podemos realizar con la fotografía son hacer un pase de diapositivas, descargarla, añadir a un álbum en concreto, subir y crear una pila, elegir la foto de perfil, archivar la foto, ver en la línea de tiempo, ver fotos similares, mover la foto a la carpeta protegida, así como actualizar caras, recargar metadatos, así como recargar miniaturas.

Tal y como podéis ver, tenemos muchas opciones en la visualización de la fotografía para tratar la foto rápidamente. Ahora os vamos a mostrar todos y cada uno de los ajustes que podemos hacer en el servidor de Immich.

 

Ajustes

En el menú de «Ajustes» vamos a tener a nuestra disposición una gran cantidad de opciones de la aplicación, la gestión de la cuenta del usuario administrador, las estadísticas de la cuenta, podemos gestionar las claves API, los dispositivos autorizados, así como también otras características de la aplicación y las notificaciones disponibles, así como la contraseña de administración que configuramos en el asistente. Además, podemos cerrar la sesión de este mismo usuario en todos los dispositivos, por si acaso se ha visto vulnerado.

Como podéis ver, tenemos muchísimos ajustes disponibles, por lo que es perfecto para adaptar Immich a nuestras necesidades.

 

Ajustes del sistema

En el menú de «Ajustes del sistema» es donde podemos configurar parámetros de configuración interna del propio servidor de fotos. Podemos realizar ajustes a las contraseñas, API y parámetros OAuth, también podemos realizar ajustes para el volcado de la base de datos, los ajustes de la imagen como las miniaturas, vistas previas, así como comprobaciones de la integridad de todas las fotos subidas. Otras opciones disponibles son las de configurar tareas simultáneas para no sobrecargar el procesador del NAS o servidor, tenemos la posibilidad de administrar una biblioteca externa para vigilar archivos modificados, aunque esta función ahora mismo es experimental.

El Machine Learning incorporado en Immich nos permitirá realizar tareas como búsqueda inteligente, detección de duplicados, así como reconocimiento facial. Desde aquí podemos ajustar los parámetros avanzados de estas opciones. También podemos administrar la configuración del mapa, así como los ajustes de geocodificación inversa. Por supuesto, tenemos la posibilidad de administrar la configuración de metadatos como importar caras de metadatos EXIF.

Por la noche cuando hay menos actividad del NAS, podemos programar algunas opciones como tareas de limpieza de base de datos, generar miniaturas restantes, agrupar caras nuevas, generar recuerdos y actualizar la cuota de almacenamiento del usuario. Podemos programar todo esto para que empiece a una determinada hora, perfecto para hacerlo en horas donde no estemos.

También tenemos las opciones de configuración de las notificaciones por email, así como modificar la plantilla de almacenamiento de las fotos (que configuramos en el asistente de configuración), los ajustes del tema, papelera, ajustes del usuario, la versión «estable» que debemos comprobar si hay actualización, así como la transcodificación del vídeo.

 

Otras opciones

Otras opciones disponibles en Immich son las de gestionar los usuarios, usar bibliotecas externas si queremos configurarla y ver las colas de trabajos (generación de miniaturas, extracción de metadatos, sincronización con bibliotecas externas, OCR, transcodificación de vídeos, migración de plantillas de almacenamiento y más). Por último, tenemos en la sección de «Mantenimiento» que es lo que falta para estar totalmente actualizado (archivos no rastreados, archivos faltantes y si hay problemas con la integridad), así como «Estadísticas del servidor» que nos permitirá ver un listado de fotos subidas, vídeos, así como el espacio de almacenamiento ocupado.

Como podéis ver, Immich nos proporcionará una gran cantidad de opciones de visualización, configuración, ajustes y automatizaciones, perfecto para que puedas sustituir a Google Fotos y no le eches de menos.

 

Cómo acceder a Immich de forma segura desde fuera de casa

Immich utiliza de forma predeterminada HTTP. Si vas a visualizar las fotos desde casa y subirlas cuando estés en casa, no hay ningún problema de seguridad porque estamos en red local (siempre y cuando no tengamos intrusos en la propia red local). Si estamos fuera de casa, no es recomendable abrir un puerto en el router hacia Immich por cuestiones de seguridad, ya que no es buena idea exponer la interfaz gráfica de usuario para evitar posibles ataques. Lo más recomendable es que accedas remotamente mediante las siguientes técnicas:

  • Cloudflare Tunnels: si tienes un dominio dado de alta en Cloudflare, podrías usar la funcionalidad de Cloudflare Tunnels que es completamente gratis. En el NAS instalarás un Docker con «cloudflared» para así poder acceder remotamente vía HTTPS. Este servicio funciona realmente como un proxy inverso, pero usando la infraestructura de Cloudflare para no tener que abrir ningún puerto. Tú te conectarás vía HTTPS con un dominio como «immich.ejemplo.com» y cloudflared se encargará de llevarnos a la interfaz de Immich. De esta forma, todo el tráfico desde tu smartphone estará cifrado.
  • Usar proxy inverso con Traefik o NGINX Proxy Manager: estos métodos son similares al anterior, pero aquí sí necesitarás abrir un puerto hacia el proxy inverso, además, en tu conexión a Internet de casa tendrás que tener IP pública, no te sirve estar detrás de CG-NAT. La configuración de estos programas es más difícil, aunque os dejamos un tutorial de cómo configurar Traefik en un NAS de QNAP.
  • VPN como ZeroTier o Tailscale: podemos usar una VPN SDN como las de ZeroTier y Tailscale, no requieren abrir puertos, y todo el tráfico irá cifrado desde tu smartphone hasta el servidor NAS donde instalemos el cliente. Esta opción es muy sencilla, y también funciona detrás de CG-NAT. Para usar Immich tendrás que estar conectado a la VPN de casa continuamente, de lo contrario, no podrás acceder.
  • Configurar un servidor con WireGuard o con OpenVPN: en este caso sí necesitamos abrir un puerto y estar con IP pública en nuestra conexión. Para usar Immich tendrás que estar conectado a la VPN de casa continuamente, de lo contrario, no podrás acceder.

La forma más cómoda es usar Cloudflare Tunnels, ya que la configuración es muy sencilla, no necesita abrir puertos, podemos estar detrás de CG-NAT y seguirá funcionando, y nos proporcionará una seguridad muy buena. Lo malo es que dependemos de un tercero, en este caso Cloudflare. Si no quieres depender de Cloudflare, puedes montarte tu propio proxy inverso como os hemos indicado. Nosotros también usamos un servidor VPN con WireGuard instalado, y que usamos por si acaso Cloudflare Tunnels no está disponible por algún motivo.

 

¿Merece la pena cambiar Google Fotos por Immich en tu NAS?

Immich ha demostrado ser la mejor alternativa al popular Google Fotos, es compatible con cualquier servidor NAS comercial y también con los sistemas operativos para NAS más populares. El funcionamiento básico es exactamente igual que Google Fotos, con una interfaz gráfica de usuario similar, con opciones de compartición de las fotos muy fáciles de usar, así como opciones de configuración avanzadas para ajustar el comportamiento de Immich a nuestras necesidades.

Lo que sí debes tener en cuenta, es que el coste de tener un NAS y el almacenamiento con discos duros o SSD son elevados en un primer momento, así que la inversión de tenerlo todo local es bastante grande. Si vas a usar el NAS para otros usos como controlar la domótica, instalar Frigate para la videovigilancia, o montarte tu propio Netflix con Plex, está claro que tener Immich te permitirá exprimirlo aún más.

Ahora mismo los principales fabricantes de NAS comerciales también tienen aplicaciones similares a Google Fotos, el problema es que son privadas y solamente se pueden usar en los NAS de la misma marca. Immich es multiplataforma gracias al uso de Docker Compose para el despliegue de todo el software necesario para su funcionamiento. Aunque los requisitos de usarlo son bastante elevados (sobre todo en cuanto a consumo de memoria RAM), estamos seguros de que será tu gestor de fotos y vídeos favorito.

Preguntas frecuentes sobre Immich

¿Es Immich un software de código abierto?
Immich es un proyecto de código abierto desarrollado por la comunidad, lo que significa que su código fuente está disponible públicamente en plataformas como GitHub. Cualquier usuario puede revisarlo, modificarlo o contribuir a su desarrollo de forma gratuita.
¿Qué es Docker y por qué lo necesita Immich?
Docker es una tecnología de contenedores que permite ejecutar aplicaciones de forma aislada y portátil sin instalar dependencias manualmente en el sistema. Immich utiliza Docker Compose para desplegar de forma conjunta el servidor, la base de datos, Redis y el motor de machine learning.
¿Se puede instalar Immich en un equipo que no sea un NAS?
Immich puede instalarse en cualquier equipo que soporte Docker, no solo en un servidor NAS, incluyendo un Raspberry Pi, un mini PC o un servidor Linux doméstico. Lo único imprescindible es contar con suficiente CPU y memoria RAM para ejecutar sus contenedores.
¿En qué se diferencia Immich de otras alternativas como PhotoPrism?
PhotoPrism es otra galería de fotos autoalojada similar a Immich, aunque con un enfoque distinto en la gestión de álbumes y el reconocimiento de imágenes. Immich destaca por su copia de seguridad automática desde el móvil y una interfaz muy parecida a Google Fotos.
¿Qué es un proxy inverso y para qué sirve al usar Immich de forma remota?
Un proxy inverso es un servidor intermedio que redirige las peticiones de los usuarios hacia la aplicación interna, añadiendo cifrado HTTPS y ocultando la dirección real del servicio. Se recomienda para acceder a Immich desde fuera de casa sin exponer directamente su interfaz en HTTP.
¿Qué métodos seguros puedo usar para acceder a Immich?
Puedes usar Cloudflare Tunnels, instalar un proxy inverso como Traefik o NGINX Proxy Manager, o bien usar VPN. Las VPN que puedes usar son Tailscale o ZeroTier si no quieres abrir puertos o tienes CG-NAT, o también WireGuard y OpenVPN si no quieres depender de terceros.
¿Cómo puedo optimizar Immich si mi NAS tiene poca RAM?
Puedes deshabilitar las funciones de Machine Learning (reconocimiento facial y OCR) desde los ajustes del sistema. También limita la memoria asignada a cada contenedor en el docker-compose (reservando al menos 2 GB para la base de datos) y evita subir muchos archivos simultáneamente. Con 4 GB de RAM el sistema se mantiene operativo, aunque las tareas de miniaturas y transcodificación se ralentizarán.
¿En qué se diferencia Immich de aplicaciones como Synology Photos o QNAP QuMagie?
La principal ventaja de Immich es su independencia del hardware: al ejecutarse sobre Docker, puedes migrar entre marcas sin perder funcionalidades. Además, ofrece una interfaz casi idéntica a Google Fotos, reconocimiento facial y de texto, copia de seguridad automática y herramientas avanzadas como flujos de trabajo. Las aplicaciones propietarias suelen estar limitadas a ciertos modelos de NAS y no ofrecen tantas opciones de personalización.
¿Cómo se actualiza Immich cuando sale una nueva versión?
Basta con modificar la variable IMMICH_VERSION en el archivo .env (poniendo "latest" o la versión deseada) y ejecutar "Deploy stack" marcando el "pull" para la nueva imagen. Immich guarda los datos en volúmenes, por lo que no se pierden las fotos ni los ajustes.