Immich - ghid de inițiere
Immich este o platformă de administrare a fotografiilor și videoclipurilor găzduită de dumneavoastră – o alternativă la Google Photos axată pe confidențialitate. Oferă backup automat de pe dispozitive mobile, recunoaștere facială, căutare inteligentă și albume partajate. Totul rulează pe serverul dumneavoastră prin Docker Compose, oferindu-vă control complet asupra datelor.
Pasul 1 – Verificați funcționarea Immich
Adresa IP și parola root a serverului sunt afișate pe pagina Server Details din panoul clientului. Immich rulează deja după pornirea serverului. Deschideți browserul și accesați:
http://your.server.ip:2283
Ar trebui să vedeți pagina de înregistrare Immich. Dacă pagina nu se încarcă, așteptați 1-2 minute pentru pornirea tuturor containerelor.
La primul acces, completați formularul pentru a crea contul de administrator:
- Email – adresa dumneavoastră de e-mail (folosită la autentificare)
- Password – alegeți o parolă puternică
- First Name și Last Name
Faceți clic pe Sign Up pentru a crea contul. După înregistrare, pagina de înregistrare este dezactivată – doar administratorul poate crea utilizatori suplimentari din panoul Administration.
Dacă ați plasat serverul în spatele unui router VyOS într-o rețea privată, conectați-vă prin VPN și accesați Immich pe IP-ul privat al serverului (recomandat pentru un serviciu personal) sau configurați redirecționarea porturilor (portul 22 pentru SSH, portul 2283 pentru interfața web Immich, porturile 80/443 dacă configurați un domeniu cu SSL).
Pasul 2 – Instalarea aplicației mobile (opțional)
Immich are aplicații mobile pentru backup automat al fotografiilor și videoclipurilor:
- iOS – descărcați Immich din App Store
- Android – descărcați Immich din Google Play sau F-Droid
În aplicație, introduceți URL-ul serverului și autentificați-vă cu contul creat:
http://your.server.ip:2283
Activați Background Backup în setările aplicației pentru a încărca automat fotografiile și videoclipurile noi.
Pasul 3 – Configurarea domeniului și SSL (opțional)
Pentru a accesa Immich prin domeniul propriu cu HTTPS:
- Creați o înregistrare A în setările DNS care direcționează domeniul către IP-ul serverului
- Așteptați propagarea DNS (de obicei câteva minute)
- Conectați-vă prin SSH și configurați Nginx ca proxy invers cu un certificat 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
Înlocuiți your-domain.com cu domeniul dumneavoastră real. Certbot va configura SSL și reînnoirea automată. Directiva client_max_body_size permite încărcarea fișierelor video mari. După configurare, actualizați URL-ul serverului în aplicația mobilă la https://your-domain.com.
După instalare
Fail2Ban – protecție împotriva atacurilor brute-force
Serverul dumneavoastră include Fail2Ban preconfigurat pentru a proteja SSH împotriva atacurilor brute-force.
| Regulă | Încercări maxime | Durata blocării |
|---|---|---|
| SSH | 5 autentificări eșuate | 10 minute |
Comenzi utile:
# Check banned IPs
fail2ban-client status sshd
# Unban an IP
fail2ban-client set sshd unbanip 1.2.3.4
Dacă vă blocați accidental, conectați-vă prin consola VNC din panoul clientului și deblocați-vă IP-ul.
Administrarea stocării
Fotografiile și videoclipurile sunt stocate în /opt/immich/upload/. O fotografie obișnuită de telefon are 3-5 MB; videoclipurile sunt mult mai mari. Immich generează și miniaturi și embedding-uri ML (~20% în plus). Pentru a verifica utilizarea discului:
df -h /
du -sh /opt/immich/upload/
Administrarea serviciilor
Immich rulează ca serviciu systemd prin 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
Actualizări
Pentru a actualiza Immich la cea mai recentă versiune:
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
Verificați întotdeauna notele de lansare înainte de actualizare, pentru eventuale modificări incompatibile.
Backup-uri
Faceți backup pentru două lucruri: folderul de încărcări și baza de date:
# 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
Software inclus
| Componentă | Versiune |
|---|---|
| Ubuntu | 24.04 LTS |
| Docker | Cea mai recentă |
| Immich | Cea mai recentă |
| PostgreSQL | 14 (Docker) |
| Valkey (Redis) | 9 (Docker) |
| Fail2Ban | 1.0 |
Depanare
| Problemă | Soluție |
|---|---|
| Interfața web nu se încarcă după prima pornire | Așteptați 1-2 minute pentru pornirea containerelor. Verificați: cd /opt/immich && docker compose ps |
| Containerele se repornesc continuu | Verificarea logurilor: cd /opt/immich && docker compose logs --tail 50. Verificați că aveți cel puțin 4 GB RAM |
| Aplicația mobilă nu se poate conecta | Verificați că URL-ul serverului include portul: http://your.server.ip:2283 |
| Spațiu insuficient pe disc | Curățați cache-ul Docker: docker system prune -a. Luați în considerare mărirea discului din panoul clientului |
| Blocat de Fail2Ban | Deblocați-vă IP-ul prin consola VNC din panoul clientului |
| Ați uitat parola root | Resetați-o prin consola VNC din panoul clientului |