Skip to content

Immich - dobra alternatywa wobec Google Photos

Posted on: 14 lutego 2025  at  15:13
Reading Time: 3 min czytania
Feature Image for  Immich - dobra alternatywa wobec Google Photos

Na początku grudnia zeszłego roku podsumowałem rok pracy na photoprism i w ostatnim akapicie wyraziłem chęć przetestowania Immicha, który charakteryzował się bardzo szybkim cyklem rozwoju i koniecznością pilnowania zmian - szczególnie tych tzw. breaking change. 2 godziny po publikacji wpisu stworzyłem proof-of-concept, który działa do dziś.

Jak to uruchomiłem

Cały proof-of-concept polega na uruchomieniu Immicha jako kolejnej kontenerowej usługi, do której montuję wspolny dysk NAS.

Schemat
Schemat dzialania

Dysk NAS (a sieciowy zasób NAS) to wspólna przestrzeń działania zarówno Photoprismy jak i Immicha, a każda z nich ma swoją odrębną bazę i konfigurację.

Photoprism jako przodownik

Nie zmieniłem roli, jaką od ponad roku odgrywa Photoprism, które jest odpowiedzialne za importowanie nowych multimediów (wykluczając duplikaty itp) do swojej bazy oraz sortowania po katalogach wg. ustalonego schematu.

Immich w tle

Immich odgrywa drugorzędną rolę. Dostęp do ww. katalogów ma w trybie read-only, co stanowi pewnego rodzaju zabezpieczenie przed niepotrzebną rozpierduchą (czytaj usuwanie plików z folderu), wynikającą z nieznajomości działania tejże usługi.

Czy słusznie? Nie wiem, ale to w żaden sposób nie wpływa na funkcjonalność poza fizycznym usuwaniem z dysku. Każda zmiana, jaka zachodzi z poziomu photoprism, jest automatycznie wykrywana przez Immicha. nic więcej nie muszę robić1

Funkcjonalność

Większość funkcji jest dobrze znana z pierwowzoru, choćby:

Aplikacja mobilna

Posiada także aplikację mobilną - do pobrania ze sklepu Google i z F-Droid. Co prawda nie dorównuje funkcjom, znane z Google Photos (wsparcie AI, edycje zdjęć), to ma jedną bardzo fajną (i unikalną) opcję, której dotąd nie spotkałem.

W ustawieniach aplikacji można ustawić 2 adresy domowej instancji Immich:

Niestety, aplikacja nie jest idealna, szczególnie gdy odpalasz raz na jakis czas i widzisz siatkę zdjęć często nieaktualną (nawet sprzed kilku dni) i każde ręczne odświeżenie nie przynosi efektu.

Nie wiem, czy to jest kwestia częstych aktualizacji samego serwisu, czy może problem leży z dostępem do sieci? Webowy Immich - podobnie jak Photoprism - świetnie dostosowuje swój interfejs do danego ekranu, więc w moim przypadku nie potrzebuję aplikacji.

Konfiguracja

Sama konfiguracja jest dosć prosta, i ogranicza się do:

  1. pobrania najnowszej wersji docker-compose.yml
  2. pobrania konfiguracji hwaccel.transcoding.yml
  3. skopiowania przykładowego .env i ustawienie ustawienia zmiennych środowiskowych .env

Na co zwrócić uwagę? Sprawdzić, jakie są uprawnienia użytkownika i to ustawić w dockerze. Najczęściej jest to zapis 1000:1000 - odnosi się do UID:GID (User ID:Group ID).

Fragment konfiguracji

services:
  immich-server:
    user: "1000:1000"
    container_name: immich_server
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - /etc/localtime:/etc/localtime:ro
      - ~/share/zdjecia:/photoprism/originals:ro
---
immich-machine-learning:
  user: "1000:1000"
  container_name: immich_machine_learning
  image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}

Uruchomienie

Samo uruchomienie serwisu nie wystarczy, aby móc korzystać z wyżej opisanego proof-of-concept

  1. Zaczynamy od polecenia
docker compose up -d
  1. Następnie logujemy się2 i udajemy się do panelu administracyjnego -> Biblioteka Zewnętrzna.
  2. Tworzymy nową bibliotekę i dodajemy ścieżkę do pod-montowanego wcześniej katalogu z Photoprism.
  3. Skanujemy całą bibliotekę3.

Po zakończeniu procesu migracji, tworzenia miniaturek, bazy exif, rozpoznania twarzy itp, warto zajrzeć do ustawień kopii zapasowej bazy danych.

Aktualizacja

Tutaj wystarczą 3 proste komendy dockerowe

docker compose pull && docker compose down && docker compose up -d

Nie muszę mówić o robieniu kopii zapasowej? ;)

TO chyba wszystko.

Note

ℹ️ Publikuję to w ramach 100 Days To Offload. Możesz dołączyć samodzielnie, odwiedzając stronę 100DaysToOffload.com

Footnotes

  1. Chyba, ze w ustawieniach zmienimy, żeby tak nie robił.

  2. tutaj niestety nie wiem, czy najpierw sie rejestrowało jako admin i ustawiało się hasło, czy już od razu było dostępne i trzeba było zmienić domyślne.

  3. należy uzbroić się w cierpliwość, bo to proces czasochłonny i prądożerny - wszystko zależy od wielkości biblioteki.



Możesz napisać do mnie e-mail lub wyszukać mnie na Mastodonie.
Loading...