Immich - průvodce pro začátečníky
Immich je self-hosted platforma pro správu fotografií a videí – alternativa ke Google Fotkám zaměřená na soukromí. Nabízí automatické zálohování z mobilních zařízení, rozpoznávání obličejů, chytré vyhledávání a sdílená alba. Vše běží na vašem serveru přes Docker Compose, takže máte nad daty plnou kontrolu.
Krok 1 – Ověřte, že Immich funguje
IP adresa a heslo root vašeho serveru jsou uvedeny na stránce Server Details v klientském panelu. Immich po startu serveru už běží. Otevřete prohlížeč a přejděte na:
http://your.server.ip:2283
Měli byste vidět registrační stránku Immich. Pokud se stránka nenačte, počkejte 1-2 minuty, než se spustí všechny kontejnery.
Při prvním přístupu vyplňte formulář a vytvořte účet administrátora:
- Email – vaše e-mailová adresa (slouží jako přihlašovací jméno)
- Password – zvolte silné heslo
- First Name a Last Name
Klikněte na Sign Up a vytvořte účet. Po registraci se registrační stránka vypne – další uživatele může vytvářet jen administrátor v panelu Administration.
Pokud jste server umístili za router VyOS v privátní síti, buď se připojte přes VPN a k Immich přistupujte přes privátní IP serveru (doporučeno pro osobní službu), nebo nastavte přesměrování portů (port 22 pro SSH, port 2283 pro webové rozhraní Immich, porty 80/443, pokud nastavíte doménu s SSL).
Krok 2 – Instalace mobilní aplikace (volitelné)
Immich má mobilní aplikace pro automatické zálohování fotografií a videí:
- iOS – stáhněte Immich z App Store
- Android – stáhněte Immich z Google Play nebo F-Droid
V aplikaci zadejte URL serveru a přihlaste se vytvořeným účtem:
http://your.server.ip:2283
Povolit Background Backup v nastavení aplikace pro automatické nahrávání nových fotografií a videí.
Krok 3 – Nastavení domény a SSL (volitelné)
Přístup k Immich přes vlastní doménu s HTTPS:
- Vytvořte A záznam v nastavení DNS, který nasměruje vaši doménu na IP serveru
- Počkejte na rozšíření DNS (obvykle několik minut)
- Připojte se přes SSH a nastavte Nginx jako reverzní proxy s certifikátem Let’s Encrypt:
ssh root@your.server.ip
apt update && apt install -y nginx certbot python3-certbot-nginx
cat > /etc/nginx/sites-available/immich << 'EOF'
server {
listen 80;
server_name your-domain.com;
client_max_body_size 50000M;
location / {
proxy_pass http://127.0.0.1:2283;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_cache_bypass $http_upgrade;
}
}
EOF
ln -s /etc/nginx/sites-available/immich /etc/nginx/sites-enabled/
rm -f /etc/nginx/sites-enabled/default
nginx -t && systemctl reload nginx
certbot --nginx -d your-domain.com
Nahraďte your-domain.com svou skutečnou doménou. Certbot nastaví SSL a automatickou obnovu. Direktiva client_max_body_size umožňuje nahrávat velká videa. Po nastavení změňte URL serveru v mobilní aplikaci na https://your-domain.com.
Po instalaci
Fail2Ban – ochrana proti útokům hrubou silou
Váš server obsahuje Fail2Ban předkonfigurovaný k ochraně SSH proti útokům hrubou silou.
| Pravidlo | Max. počet pokusů | Doba blokace |
|---|---|---|
| SSH | 5 neúspěšných přihlášení | 10 minut |
Užitečné příkazy:
# Check banned IPs
fail2ban-client status sshd
# Unban an IP
fail2ban-client set sshd unbanip 1.2.3.4
Pokud se omylem zablokujete, připojte se přes konzoli VNC v klientském panelu a odblokujte svou IP.
Správa úložiště
Fotografie a videa jsou uloženy v /opt/immich/upload/. Běžná fotografie z telefonu má 3-5 MB; videa jsou mnohem větší. Immich také generuje náhledy a ML embeddingy (~20 % navíc). Kontrola využití disku:
df -h /
du -sh /opt/immich/upload/
Správa služeb
Immich běží jako služba systemd přes Docker Compose:
# Check container status
cd /opt/immich && docker compose ps
# View logs
cd /opt/immich && docker compose logs -f
# Restart Immich
systemctl restart immich
Aktualizace
Aktualizace Immich na nejnovější verzi:
cd /opt/immich
curl -fsSL https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml -o docker-compose.yml
docker compose pull
docker compose down && docker compose up -d
Vždy zkontrolujte poznámky k vydání kvůli případným nekompatibilním změnám.
Zálohy
Zálohujte dvě věci: složku s nahranými soubory a databázi:
# Database backup
docker exec -t immich_postgres pg_dumpall -c -U postgres > /opt/immich/db_backup.sql
# Database restore (if needed)
cat /opt/immich/db_backup.sql | docker exec -i immich_postgres psql -U postgres
Zahrnutý software
| Komponenta | Verze |
|---|---|
| Ubuntu | 24.04 LTS |
| Docker | Nejnovější |
| Immich | Nejnovější |
| PostgreSQL | 14 (Docker) |
| Valkey (Redis) | 9 (Docker) |
| Fail2Ban | 1.0 |
Řešení problémů
| Problém | Řešení |
|---|---|
| Webové rozhraní se po prvním startu nenačítá | Počkejte 1-2 minuty na spuštění kontejnerů. Kontrola: cd /opt/immich && docker compose ps |
| Kontejnery se neustále restartují | Kontrola logů: cd /opt/immich && docker compose logs --tail 50. Ověřte, že máte alespoň 4 GB RAM |
| Mobilní aplikace se nemůže připojit | Ověřte, že URL serveru obsahuje port: http://your.server.ip:2283 |
| Nedostatek místa na disku | Vyčistěte cache Dockeru: docker system prune -a. Zvažte zvětšení disku v klientském panelu |
| Blokováno službou Fail2Ban | Odblokujte svou IP přes konzoli VNC v klientském panelu |
| Zapomenuté heslo root | Obnovte jej přes konzoli VNC v klientském panelu |