Skip to main content

Immich


¿Qué es Immich?

Immich es una solución autohospedada de alto rendimiento para la gestión de fotos y videos. Diseñada para ser eficiente y respetar tu privacidad, permite realizar copias de seguridad automáticas, organizar, buscar y visualizar tus recuerdos digitales con facilidad. Immich incluye características avanzadas como reconocimiento facial, búsqueda inteligente y soporte para múltiples usuarios.

⚠️ Nota importante:
El archivo docker-compose.yml mostrado aquí es funcional a día de hoy, pero debido al constante desarrollo de Immich, podría requerir actualizaciones futuras. Se intentará mantener la documentación al día.


Configuración en Docker

Aquí tienes el archivo docker-compose.yml utilizado para desplegar Immich:

name: immich

services:
  immich-server:
    container_name: IMServer
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    volumes:
      - /data/uploads:/usr/src/app/upload
      - /data/photos:/Fotos
      - /etc/localtime:/etc/localtime:ro
    environment:
      - TZ=Europe/Madrid
    env_file:
      - .env
    ports:
      - 2283:2283
    depends_on:
      - redis
      - database
    restart: unless-stopped

  immich-machine-learning:
    container_name: IMMachineLearning
    image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}-cuda
    volumes:
      - model-cache:/cache
    env_file:
      - .env
    restart: unless-stopped

  redis:
    container_name: IMRedis
    image: registry.hub.docker.com/library/redis:6.2-alpine
    restart: unless-stopped

  database:
    container_name: IMDB
    image: registry.hub.docker.com/tensorchord/pgvecto-rs:pg14-v0.2.0
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
    volumes:
      - /data/db:/var/lib/postgresql/data
    restart: unless-stopped

networks:
  default:
    name: Immich_NET

volumes:
  pgdata:
  model-cache:

Archivo .env

Este archivo contiene las variables de entorno necesarias para que Immich funcione correctamente:

# Ubicación donde se almacenan los archivos subidos
UPLOAD_LOCATION=/data/uploads

# Versión de Immich a usar
IMMICH_VERSION=release

# Credenciales de la base de datos
DB_PASSWORD=cambiar_esto
DB_HOSTNAME=IMDB
DB_USERNAME=immich_user
DB_DATABASE_NAME=immich_db

# Configuración de Redis
REDIS_HOSTNAME=IMRedis

Explicación de la configuración

1. Servicio principal: immich-server

  • image: ghcr.io/immich-app/immich-server
    Servidor principal de Immich que gestiona la interfaz y las operaciones principales.

  • volumes:

    • /data/uploads:/usr/src/app/upload: Directorio donde se almacenan los archivos subidos.
    • /data/photos:/Fotos: Directorio donde se guardan las fotos y videos organizados.
  • depends_on:
    Depende de los servicios redis y database para funcionar correctamente.


2. Servicio de Machine Learning: immich-machine-learning

  • image: ghcr.io/immich-app/immich-machine-learning
    Proporciona características avanzadas como reconocimiento facial y búsqueda inteligente.

  • volumes:

    • model-cache:/cache: Caché para modelos de aprendizaje automático.

3. Redis

  • image: redis:6.2-alpine
    Almacena datos temporales para optimizar el rendimiento del sistema.

4. Base de datos: PostgreSQL

  • image: registry.hub.docker.com/tensorchord/pgvecto-rs
    Gestor de base de datos para Immich, diseñado para manejar grandes cantidades de datos multimedia.

  • volumes:

    • /data/db:/var/lib/postgresql/data: Carpeta donde se almacena la base de datos de Immich.

Cómo usar Immich

  1. Levanta los contenedores:
    Ejecuta el siguiente comando:

    docker-compose up -d
    
  2. Accede a la interfaz:
    Abre tu navegador y dirígete a:

    http://<IP_DEL_SERVIDOR>:2283
    
  3. Configura usuarios y carga tus fotos:

    • Crea usuarios desde la interfaz.
    • Sube tus fotos y videos para comenzar a organizarlos.

¿Por qué usar Immich?

  • Privacidad: Mantén el control total sobre tus datos multimedia.
  • Eficiencia: Alta velocidad de carga y búsqueda gracias a tecnologías modernas.
  • Inteligencia: Reconocimiento facial y búsqueda avanzada.
  • Multiplataforma: Compatible con aplicaciones móviles para copias de seguridad automáticas.

Para más información y opciones avanzadas, consulta el sitio oficial de Immich o su repositorio en GitHub.