DobryPC.pl
Strona głównaNajnowsze działy, poradniki i projekty DobryPC.plPoradnikiWindows, sieci, sprzęt i rozwiązywanie problemówHomelabProxmox, Docker, storage, backup i self-hostingSmart HomeHome Assistant, automatyzacje i lokalny inteligentny domNarzędziaKalkulatory i generatory działające w przeglądarceProjektyKompletne projekty od założeń do wdrożeniaGamingKomputery gamingowe, dobór podzespołów oraz praktyczne poradniki do gierKomputery gamingowePolecane zestawy, podzespoły, modernizacja i dobór komputera do gierGryPoradniki, ustawienia, wydajność i praktyczne materiały dotyczące gierKontaktKontakt z autorem i wsparcie rozwoju DobryPC.plApexDash — darmowy panel telemetrii Forza Horizon na Stream DockApexDash zamienia Stream Dock, Mirabox lub zgodne urządzenie w panel telemetrii do Forza Horizon z prędkością, RPM, biegiem, oponami i statystykami.Co to jest Home Assistant i dlaczego warto go wybrać?Proste wprowadzenie do Home Assistanta: lokalne sterowanie, prywatność, automatyzacje oraz porównanie z Apple Home, Google Home, Alexą i Tuya.Co to jest homelab i jak zacząć bez kupowania szafy serwerowej?Proste wprowadzenie do homelabu: sprzęt, system, wirtualizacja, sieć, kopie zapasowe i pierwsze usługi na domowym serwerze.Co to jest Microsoft Hyper-V i kiedy warto się go nauczyć?Hyper-V w Windows Server 2025 i Windows 11: architektura, maszyny, wirtualne przełączniki, zarządzanie, wymagania oraz darmowe opcje do nauki.Co to jest Proxmox VE i dlaczego tak często trafia do homelabów?Krótkie wprowadzenie do Proxmox VE 9.2: maszyny KVM, kontenery LXC, storage, backup, klastry oraz darmowe i płatne repozytoria.Co to jest Ubuntu Server? Wersje, zastosowania i darmowe wsparcieUbuntu Server 26.04 LTS i starsze wydania LTS: zastosowania, brak pulpitu, aktualizacje, pięć lat wsparcia oraz darmowy Ubuntu Pro.Co to jest VMware ESXi i czym różni się od vSphere oraz vCenter?Proste wyjaśnienie produktów VMware: ESXi/ESX, vSphere i vCenter, możliwości wersji bezpłatnej oraz ograniczenia ważne w homelabie.Co to jest Windows Server 2025 i jak długo testować go za darmo?Windows Server 2025: edycje Standard i Datacenter, Server Core, role AD DS, Hyper-V i pliki oraz legalna 180-dniowa wersja ewaluacyjna.DLSS vs FSR vs XeSS w 2026 roku — jak działają i co jest najlepsze?Porównanie NVIDIA DLSS 4.5, AMD FSR Redstone i Intel XeSS 3: upscaling, generowanie klatek, opóźnienia, jakość obrazu i zgodność z kartami.FrameHub — jak rozwijam własny hub do optymalizacji Windowsa i gierHistoria FrameHuba, mojego programu do zarządzania biblioteką gier, profilami CPU, procesami i konfiguracją Counter-Strike 2.Jak obliczyć podsieć IPv4 i zrozumieć zapis CIDR?Maska, CIDR, adres sieci, broadcast i zakres hostów wyjaśnione na prostych przykładach /24, /26, /28 i /30.Jak powtarzalnie benchmarkować CS2 — moje narzędzie z AutoHotkey i CapFrameXCS2 Consistent Benchmarking Tool automatyzuje uruchamianie mapy testowej, start pomiaru w CapFrameX i zamknięcie gry.Dlaczego komputer wolno działa? Jak znaleźć przyczynę bez zgadywaniaPraktyczna diagnostyka wolnego komputera: Menedżer zadań, autostart, wolne miejsce, temperatury, RAM, dysk i aktualizacje Windows.Jaki sprzęt do Home Assistanta wybrać w 2026 roku?Home Assistant Green, Raspberry Pi 5, N100/N150 oraz używane terminale i mini PC — porównanie opłacalności, poboru prądu i możliwości rozbudowy.Komputer nie ma dostępu do Internetu — diagnostyka krok po krokuProsta diagnostyka połączenia w Windows 11: router, karta sieciowa, adres IP, brama, DNS, sterownik i reset ustawień sieciowych.Najlepsze karty graficzne do gier 2026 — ranking GPURanking kart graficznych do 1080p, 1440p i 4K z wynikami rasteryzacji, ray tracingu oraz oceną opłacalności.Najlepsze procesory do CS2 i gier competitive w 2026 rokuPolecane procesory do CS2, Valoranta, Fortnite i innych gier competitive — od taniego AM5 po topowe Ryzeny X3D.Optymalizacja CS2 w 2026 — ustawienia pod FPS, 1% low i input lagPrzetestowane ustawienia CS2, Windows 11, CPU Sets i opcje uruchamiania pod wysoki FPS, stabilne 1% low oraz niski input lag.Outlook nie wysyła wiadomości — diagnostyka krok po krokuKompletna diagnostyka problemu, gdy Outlook nie wysyła wiadomości, pozostawia je w kolejce albo zamyka okno bez potwierdzenia.Projekt: pierwszy homelab na używanym mini PCKompletny plan pierwszego homelabu: wybór używanego mini PC, Proxmox, maszyna z Dockerem, usługi, sieć, monitoring i backup.Jaki dongle Zigbee wybrać w 2026 roku?Polecane koordynatory Zigbee do Home Assistanta: SONOFF ZBDongle-E, Home Assistant Connect ZBT-2 i SMLIGHT. Różnice, ceny oraz linki do polskich ofert.Process Core Optimizer — mój program do zarządzania rdzeniami CPU w WindowsHistoria mojego programu do zarządzania CPU Affinity, CPU Sets, priorytetami i automatycznymi profilami procesów w Windows.Proxmox, Hyper-V czy VMware — co wybrać do homelabu w 2026 roku?Praktyczne porównanie Proxmox VE 9.2, Microsoft Hyper-V i darmowego VMware ESXi 8: koszty, sprzęt, funkcje, nauka i zastosowania.Projekt: prywatna chmura zdjęć z Immich zamiast Google PhotosPlan wdrożenia Immich na domowym serwerze: wymagania, Docker Compose, storage, aplikacja mobilna, dostęp zdalny i prawidłowy backup.Robocopy bez niespodzianek — bezpieczna kopia plików w WindowsJak używać Robocopy do kopiowania i synchronizacji danych: tryb testowy, logi, ponawianie, wielowątkowość i niebezpieczne opcje.Ubuntu Server czy Windows Server — który system wybrać do nauki?Porównanie Ubuntu Server 26.04 LTS i Windows Server 2025: koszty, administracja, role, kontenery, wymagania oraz wybór do homelabu.ZHA czy Zigbee2MQTT — co wybrać w 2026 roku?Aktualne porównanie ZHA i Zigbee2MQTT: instalacja, kompatybilność urządzeń, konfiguracja, kopie zapasowe oraz migracja między systemami.Zigbee, Wi-Fi, Thread, Matter, Tasmota i ESPHome — co wybrać?Proste porównanie technologii Smart Home w 2026 roku: czym są, czego wymagają, kto ich używa oraz co najlepiej pasuje do Home Assistanta.
Docker

Projekt: prywatna chmura zdjęć z Immich zamiast Google Photos

Plan wdrożenia Immich na domowym serwerze: wymagania, Docker Compose, storage, aplikacja mobilna, dostęp zdalny i prawidłowy backup.

Autor:ErykOpublikowano:15 min czytania
#Immich#Docker#zdjęcia#self-hosting#backup

DobryPC.pl tworzę niezależnie, poświęcając na poradniki własny czas i środki.Wesprzyj rozwój strony

Immich to otwarta, samodzielnie hostowana platforma do zdjęć i filmów. Oferuje aplikację mobilną, automatyczne wysyłanie zdjęć, oś czasu, albumy, mapę, wyszukiwanie i funkcje uczenia maszynowego. Może przypominać prywatne Google Photos, ale serwer oraz dane utrzymujesz samodzielnie.

To daje kontrolę i dużo satysfakcji, ale również odpowiedzialność. Immich nie może być jedynym miejscem przechowywania zdjęć. Awaria dysku, błędna aktualizacja lub pomyłka administratora nie powinny usuwać rodzinnego archiwum.

Cel projektu

Zbudujemy środowisko, w którym:

  • Immich działa w maszynie wirtualnej z Linuksem,
  • aplikacja mobilna wysyła nowe zdjęcia,
  • baza danych znajduje się na lokalnym SSD,
  • pliki multimedialne mają odpowiednią przestrzeń,
  • serwer jest dostępny najpierw tylko lokalnie,
  • baza i oryginalne pliki są regularnie kopiowane,
  • przed pełną migracją testujemy odtworzenie.

Wymagania w 2026 roku

Aktualna dokumentacja Immich zaleca Linux lub inny system uniksowy, minimum 6 GB RAM i 2 rdzenie, a dla wygodnej pracy 8 GB RAM i 4 rdzenie. Generowane miniatury oraz transkodowane filmy mogą zwiększyć rozmiar biblioteki średnio o 10–20%.

Projekt wymaga współczesnego polecenia docker compose. Stare docker-compose nie jest już wspierane przez Immich.

Twórcy zalecają pełną maszynę wirtualną przy wirtualizacji. Docker uruchomiony wewnątrz LXC może działać, ale nie jest polecanym środowiskiem dla początkujących i utrudnia uzyskanie pomocy.

Proponowane zasoby VM

System: Debian Stable lub Ubuntu Server LTS
CPU:    4 vCPU
RAM:    8 GB
Dysk systemowy i baza: lokalny SSD
Biblioteka: osobny duży dysk lub prawidłowo zamontowany storage
Sieć:   przewodowa 1 Gb/s lub szybsza

Jeśli zaczynasz od zera, projekt pierwszy homelab na używanym mini PC przygotuje host i maszynę z Dockerem.

Zaplanuj miejsce przed instalacją

Immich korzysta między innymi z dwóch ważnych lokalizacji:

  • UPLOAD_LOCATION — zdjęcia, filmy i generowane pliki,
  • DB_DATA_LOCATION — dane PostgreSQL.

Baza PostgreSQL powinna znajdować się na lokalnym SSD i na systemie plików obsługującym uprawnienia uniksowe. Dokumentacja wyraźnie odradza umieszczanie bazy na udziale sieciowym. Biblioteka zdjęć może zajmować dużo miejsca, więc zaplanuj ją z zapasem oraz uwzględnij miniatury i transkodowanie.

Przykład:

/opt/immich/              pliki Compose i .env
/srv/immich/postgres/     baza na lokalnym SSD
/srv/immich/library/      zdjęcia i filmy
/mnt/backup/immich/       kopia na innym urządzeniu

Nie trzymaj backupu w podkatalogu tej samej biblioteki ani na tym samym SSD.

Instalacja oficjalną metodą Docker Compose

Zaloguj się do przygotowanej maszyny z Linuksem. Zainstaluj Docker Engine i wtyczkę Compose według oficjalnej dokumentacji Dockera.

Następnie utwórz katalog projektu:

mkdir -p /opt/immich
cd /opt/immich

Pobierz aktualne pliki wydania z oficjalnego repozytorium Immich:

wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env

Przed uruchomieniem otwórz .env i ustaw co najmniej:

  • bezpieczne hasło bazy,
  • UPLOAD_LOCATION,
  • DB_DATA_LOCATION,
  • właściwą strefę czasową, jeśli występuje w używanej wersji pliku.

Nie kopiuj gotowego .env z poradnika. Oficjalny przykładowy plik zmienia się wraz z wersjami Immich i jest najlepszym punktem startowym.

Uruchom usługi:

docker compose up -d

Sprawdź stan:

docker compose ps
docker compose logs --tail=100

Interfejs powinien być dostępny lokalnie pod:

http://ADRES-SERWERA:2283

Pierwsze utworzone konto zostaje administratorem. Użyj unikalnego hasła i od razu zapisz je w menedżerze haseł.

Aplikacja mobilna i pierwszy test

Zainstaluj oficjalną aplikację Immich, wpisz lokalny adres serwera i zaloguj się. Na początek wybierz jeden niewielki album testowy zamiast całej biblioteki telefonu.

Sprawdź:

  • wysyłanie w tle,
  • zachowanie po utracie Wi-Fi,
  • duplikaty,
  • daty i lokalizacje zdjęć,
  • odtwarzanie filmów,
  • wykorzystanie miejsca na serwerze,
  • czas generowania miniatur.

Dopiero po kilku dniach dołącz większą bibliotekę. Pierwsze indeksowanie i uczenie maszynowe mogą chwilowo mocno obciążyć CPU oraz pamięć.

Dostęp zdalny

Najpierw korzystaj z Immich wyłącznie w sieci lokalnej. Najprostszą bezpieczną drogą do dostępu z telefonu poza domem jest prywatny VPN, na przykład WireGuard lub Tailscale.

Publiczna domena z reverse proxy jest wygodna, ale wymaga poprawnego HTTPS, aktualizacji, ograniczenia dostępu i monitorowania. Nie przekierowuj po prostu portu 2283 z routera do Internetu.

Jeśli udostępniasz usługę innym domownikom, wyjaśnij im, że prywatna chmura działa na Twoim serwerze. Muszą wiedzieć, co stanie się z aplikacją podczas aktualizacji, awarii zasilania albo prac serwisowych.

Backup: pliki i baza są potrzebne razem

Immich przechowuje ścieżki oraz metadane w PostgreSQL. Sama kopia zdjęć nie odtworzy albumów, użytkowników i całego stanu aplikacji. Z kolei kopia bazy bez oryginalnych plików również jest niewystarczająca.

Kompletny backup obejmuje:

  1. bazę danych Immich,
  2. całą zawartość UPLOAD_LOCATION,
  3. pliki docker-compose.yml i .env przechowywane bezpiecznie,
  4. kopię na innym urządzeniu,
  5. drugą kopię najważniejszych zdjęć poza domem.

Immich tworzy automatyczne backupy bazy, ale nie zawierają one zdjęć i filmów. Trzeba kopiować je razem z biblioteką.

Twórcy zalecają strategię 3-2-1. Przy spójnym backupie najlepiej zatrzymać zapis do aplikacji na czas kopiowania. Jeśli nie można tego zrobić, dokumentacja zaleca najpierw kopię bazy, a później plików.

Test odtworzenia

Nie czekaj na awarię.

  1. Utwórz ręczny backup bazy z panelu administracyjnego.
  2. Skopiuj bibliotekę na drugi nośnik.
  3. Postaw małą testową instancję w odizolowanym środowisku.
  4. Odtwórz bazę i kilka przykładowych plików zgodnie z dokumentacją właściwej wersji.
  5. Sprawdź albumy, miniatury i oryginały.
  6. Zapisz datę oraz wynik testu.

Proces odtwarzania zmienia się wraz z rozwojem Immich. Dokumentacja podaje, że mechanizm zmienił się między innymi w wersji 2.5.0, dlatego podczas awarii zawsze wybieraj instrukcję odpowiadającą wersji backupu.

Aktualizacje bez nerwów

Przed aktualizacją:

  • przeczytaj informacje o wydaniu,
  • sprawdź wolne miejsce,
  • wykonaj kopię bazy i biblioteki,
  • zapisz obecną wersję,
  • upewnij się, że masz czas na test aplikacji.

Typowa aktualizacja Compose wygląda następująco:

docker compose pull
docker compose up -d

Nie uruchamiaj jej automatycznie bez kontroli przy każdej nowej wersji. W przypadku rodzinnego archiwum stabilność jest ważniejsza niż natychmiastowy dostęp do nowej funkcji.

Kiedy Immich ma sens?

Tak, jeśli chcesz mieć kontrolę nad danymi, lubisz self-hosting i akceptujesz odpowiedzialność za serwer oraz backup.

Nie, jeśli nie chcesz zajmować się aktualizacjami, monitoringiem i odtwarzaniem danych. Wtedy usługa chmurowa może być rozsądniejsza — nadal warto jednak mieć własną niezależną kopię zdjęć.

Najlepszy wariant nie musi oznaczać całkowitego porzucenia Google Photos lub iCloud pierwszego dnia. Możesz uruchomić Immich równolegle, przetestować go przez kilka miesięcy i dopiero później zdecydować, jaką rolę ma pełnić.

Źródła i dalsza lektura