Instalación de immich en unraid
¿Quieres tener la mejor experiencia parecida a Google Fotos en tu servidor Unraid?
Esto es lo que vamos a hacer con el contenedor de Immich y vamos a comenzar con los pasos para su instalación.
Actualmente nos informan de los siguiente
El proyecto está en desarrollo muy activo. Espere errores y cambios. No lo utilices como única forma de almacenar tus fotos y vídeos.
Esto hace que, por ejemplo, la parte de machine learning de reconocimiento de fotos áun no funcione.
Instalar plugin
Vamos a la pestaña apps y buscamos el plugin "Docker Compose Manager" y lo instalamos.
Postgres sql 14
Esto lo hago por si ya corres otra base de datos postgres en tu servidor unraid y que a mi me estaba dando problemas iniciales.
- En la misma pestaña de apps buscamos el contenedor de posgrest:14
- Creamos contenedor con postgres con la imagen de postgres:14
- Cambiamos el nombre del contenedor a immich-db
- Cambiamos las siguientes variables dentro del contenedor:
- POSTGRES_PASSWORD , en mi caso lo hice con el generador de Bitwarden
- POSTGRES_USER el que elijamos
- POSTGRES_DB immich-db
- Database Storage Path Yo he elegido /mnt/user/appdata/postgresql14 , tu puedes elegir la ruta donde te apetezca tener la base de datos instalada
- Damos valor al puerto del 5535 para no coincidir con las demás bbdd
Contenedor
- Vamos a la pestaña de plugins y pulsamos en el plugin de Compose.Manager
- Pulsamos sobre el boton ADD NEW STACK
- En la ventana emergente que nos abre, daremos un nombre a nuestro contenedor, ejemplo immich
- Pulsamos en OK
- Esperamos a que nos diga que lo ha creado con exito.
- Pulsamos en la rueda dentada delante de nuestro contenedor y seleccionamos EDIT STACK
- En el menu emergente pulsamos en COMPOSE FILE.
- En otra pestaña vamos a https://raw.githubusercontent.com/immich-app/immich/main/docker/docker-compose.yml
Copiamos ese contenido y lo pegamos en la ventana del compose que teniamos abierta en nuestro unraid, borrando completamente antes de pegar la línea uno que ya teniamos escrita. - Como queremos instalar el contenedor con la base de datos que hemos creado antes, tenemos que comentar las siguientes lineas de codigo con el simbolo # antes de cualquier ruta. Estas lineas son la 16, 31, 44, 45, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 93 y 94.
- Pulsamos en SAVE CHANGES y en la ventana emergente pulsamos en OK.
Archivo .env
Si tenemos algún contenedor o servicio que esté funcionando sobre el puerto 3000, 3001 o 3003 os recomiendo que lo cambieis, ya que es más fácil hacerlo en algun otro contenedor para que éste funcione correctamente.
- Lo primero que tenemos que hacer es crear una carpeta donde van a estar todas las fotos que vayamos subiendo a nuestro contenedor.
- En mi caso me he ido a la ruta /mnt/user/ y ahi he creado una carpeta.
- Esto lo he hecho mediante conexión a mi unraid por terminal y haciendo un mkdir images y luego he entrado en esa carpeta mediante el comando cd images y he creado otra nueva mediante el comando mkdir immich. Luego he entrado en esa carpeta mediante cd immich y una vez dentro de la carpeta, he escrito pwd y he copiado la ruta que me ofrece la terminal.
- Luego y antes de acabar con el terminal, he ejecutado el siguiente comando openssl rand -base64 128 y copio el valor que me ha dado en una sola linea, ya que en mi caso me lo parte en tres lineas.
- Vamos a la pestaña de plugins y pulsamos en el plugin de Compose.Manager
- Pulsamos en la rueda dentada delante de nuestro contenedor y seleccionamos EDIT STACK
- En el menu emerrgente pulsamos en ENV FILE.
- En el navegador abrimos otra pestaña y entramos en la siguiente dirección https://raw.githubusercontent.com/immich-app/immich/main/docker/example.env
Copiamos el contenido y lo pegamos en la ventana del archivo ENV FILE que estabamos editando. - Tenemos que editar los valores siguientes:
- Linea 5 DB_HOSTNAME: ponemos la IP de nuestro Unraid
- Linea 6 DB_USERNAME: ponemos el POSTGRES_USER que elegimos la crear el contenedor de la base de datos.
- Linea 7 DB_PASSWORD: ponemos el POSTGRES_PASSWORD que elegimos la crear el contenedor de la base de datos.
- Linea 8 DB_DATABASE_NAME: ponemos el POSTGRES_DB que elegimos la crear el contenedor de la base de datos.
- Descomentamos la línea 11 eliminando el símbolo # y en DB_PORT ponemos el puerto de la base de datos que elegimos la crear el contenedor de la base de datos.
- En la línea 31 tenemos que pegar la ruta que copiamos al poner el comando pwd en el paso anterior.
- En la línea 41 pegamos el valor que habíamos obtenido en la terminal. Como os dije, tiene que quedar en una sola linea
10 .Pulsamos en SAVE CHANGES
11. Pulsamos en el botón COMPOSE UP y comezará la descarga y montaje de los contenedores en una ventana emergente. Tardará entre 4-6 minutos.
- Una vez que nos salga el mensaje CONNECTION CLOSED, ya podemos ir a un navegador e introducir la IP de nuestro unraid:2283 que es el puerto que por defecto venía en el compose.
Si todo ha ido bien debe salir la imagen de ADMIN REGISTRATION, donde tenemos que crear los datos del usuario que tenga el nivel de admin
Una vez en la página de admin
- Iremos al boton ADMINISTRATION y pulsaremos en él.
- Podemos crear los usuarios que queramos en el primer apartado.
- Para crear uno, pulsamos en CREATE USER, rellenamos y guardamos los datos de acceso en un documento aparte ya que, en mi caso, el usuario no recibio ningún correo.
- Una vez rellenado pulsamos sobre el botón crear.
En la parte de settings
Iremos a STORAGE TEMPLATE y en el apartado TEMPLATE yo lo he puesto así {{y}}/{{MM}}/{{filename}} para que me estructure las carpetas por año y una vez dentro del año, me muestre los meses del año con numeros y dentro de cada mes a su vez la totalidad de los archivos (fotos y videos que se hicieron ese día)
Pulsamos en SAVE.
Instalamos la app en nuestro móvil
Si tenemos un iPhone nos iremos al AppStore y buscaremos la app de Immich. Puedes pulsar también en este enlace https://apps.apple.com/us/app/immich/id1613945652
En android haremos lo mismo entrando a Play Store o pulsando en el siguiente enlace https://play.google.com/store/apps/details?id=app.alextran.immich
En la pantalla de bienvenida, tendremos que poner los datos de administrador o de usuario que hayamos creado y en el campo SERVER ENDPOINT URL, tenemos que poner la dirección de nuestro servidor y el puerto elegido. Quedará algo así http://IPUNRAID:PUERTOELEGIDO/api
Si has creado un proxy inverso anteriormente en la parte de SERVER ENDPOINT URL tendrás que poner https://tuproxyinverso/api
Pulsamos en el icono de la nube de arriba a la derecha y una vez dentro
- Damos permiso para que la app acceda a las fotos que nosotros queramos o a todas las fotos
- Pulsamos el botón SELECCIONAR en la parte de ALBUNES DE COPIA DE SEGURIDAD y seleccionamos los archivos que queremos respaldar.
- Veremos que en TOTAL nos da el número de fotos que hay en nuestro dispositivo
- Si bajamos nos saldrá un botón que nos dice de ENCENDER LA COPIA DE SEGURIDAD y si lo pulsamos, veremos que comienza a hacer la copia de todos nuestras fotos y videos.
De este modo ya tendremos respaldadas las fotos de nuestros móviles en nuestro Unraid.
Automatización de copias al poner el iPhone en carga
Con todo esto hecho, ya está la app configurada para funcionar. ¿Pero y si quiero hacer las copias de manera automática y no abriendo la app para hacerlo manualmente?
Aquí entran en juegos dos apps:
- Atajos
- Toolbox Pro Esta app es gratuita pero el paquete completo tiene un precio, en compra in-app de 6,99€
- Entramos en la app atajos
- En la barra inferior vamos a Automatización y después pulsamos en +
3. Creamos una automatización personal
4. En el menú que se abre seleccionamos cargador
5. Marcamos la opción Está conectado y pulsamos en siguiente
6. Configuramos nuestro atajo de la siguiente manera
Configuramos el atajo para que no nos pida confirmación ni nos notifique cuando se ejecute
Y cuando enchufemos el iPhone a un cargador y estemos en nuetra red wifi, pasará la magia de la automatización.
Mi nombre es David Rodríguez, apasionado por un millón de cosas que lleven placas y chips dentro.
Puedes encontrarme como @_Bilito en twitter y en grupo de Telegram de Synology NAS https://t.me/synologyNAS
Tengo un un canal de youtube que complementa al blog https://www.youtube.com/@_Bilito y que me harías un gran favor si te subscribes.
También colaboro en podcast como Bateria 2x100 https://pod.link/1115144939 y además hemos comenzado otra aventura en otro podcast Detras del Mostrador https://pod.link/1657695301