Immich - pradžios vadovas
Immich yra savarankiškai talpinama nuotraukų ir vaizdo įrašų valdymo platforma – į privatumą orientuota Google Photos alternatyva. Ji siūlo automatines atsargines kopijas iš mobiliųjų įrenginių, veidų atpažinimą, išmaniąją paiešką ir bendrinamus albumus. Viskas veikia jūsų serveryje per Docker Compose, todėl visiškai kontroliuojate savo duomenis.
1 žingsnis – Patikrinkite, ar Immich veikia
Jūsų serverio IP adresas ir root slaptažodis nurodyti kliento skydelio puslapyje Server Details. Paleidus serverį Immich jau veikia. Atidarykite naršyklę ir eikite į:
http://your.server.ip:2283
Turėtumėte matyti Immich registracijos puslapį. Jei puslapis neįsikelia, palaukite 1-2 minutes, kol pasileis visi konteineriai.
Pirmą kartą atidarę, užpildykite formą ir susikurkite administratoriaus paskyrą:
- Email – jūsų el. pašto adresas (naudojamas prisijungimui)
- Password – pasirinkite stiprų slaptažodį
- First Name ir Last Name
Spustelėkite Sign Up , kad sukurtumėte paskyrą. Užsiregistravus registracijos puslapis išjungiamas – kitus naudotojus gali kurti tik administratorius Administration skydelyje.
Jei serverį patalpinote už VyOS maršrutizatoriaus privačiame tinkle, arba prisijunkite per VPN ir pasiekite Immich privačiu serverio IP (rekomenduojama asmeninei paslaugai), arba sukonfigūruokite prievadų peradresavimą (22 prievadas SSH, 2283 prievadas Immich žiniatinklio sąsajai, 80/443 prievadai, jei nustatysite domeną su SSL).
2 žingsnis – Mobiliosios programėlės diegimas (neprivaloma)
Immich turi mobiliąsias programėles automatinėms nuotraukų ir vaizdo įrašų atsarginėms kopijoms:
- iOS – atsisiųskite Immich iš App Store
- Android – atsisiųskite Immich iš Google Play arba F-Droid
Programėlėje įveskite serverio URL ir prisijunkite sukurta paskyra:
http://your.server.ip:2283
Įjungti Background Backup programėlės nustatymuose, kad naujos nuotraukos ir vaizdo įrašai būtų įkeliami automatiškai.
3 žingsnis – Domeno ir SSL konfigūravimas (neprivaloma)
Norėdami pasiekti Immich per savo domeną su HTTPS:
- Sukurkite A įrašą DNS nustatymuose, nukreipiantį jūsų domeną į serverio IP
- Palaukite, kol DNS išplis (paprastai kelias minutes)
- Prisijunkite per SSH ir nustatykite Nginx kaip atvirkštinį tarpinį serverį su Let’s Encrypt sertifikatu:
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
Pakeiskite your-domain.com savo tikruoju domenu. Certbot sukonfigūruos SSL ir automatinį atnaujinimą. Direktyva client_max_body_size leidžia įkelti didelius vaizdo failus. Po sąrankos mobiliojoje programėlėje pakeiskite serverio URL į https://your-domain.com.
Po įdiegimo
Fail2Ban – apsauga nuo slaptažodžių spėjimo atakų
Jūsų serveryje įdiegta Fail2Ban iš anksto sukonfigūruotas apsaugoti SSH nuo slaptažodžių spėjimo atakų.
| Taisyklė | Maks. bandymų | Blokavimo trukmė |
|---|---|---|
| SSH | 5 nesėkmingi prisijungimai | 10 minučių |
Naudingos komandos:
# Check banned IPs
fail2ban-client status sshd
# Unban an IP
fail2ban-client set sshd unbanip 1.2.3.4
Jei netyčia užsiblokavote, prisijunkite per VNC konsolę kliento skydelyje ir atblokuokite savo IP.
Saugyklos valdymas
Nuotraukos ir vaizdo įrašai saugomi /opt/immich/upload/. Įprasta telefono nuotrauka užima 3-5 MB; vaizdo įrašai daug didesni. Immich taip pat generuoja miniatiūras ir ML įterpinius (~20 % papildomai). Disko naudojimo patikra:
df -h /
du -sh /opt/immich/upload/
Paslaugų valdymas
Immich veikia kaip systemd paslauga per 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
Atnaujinimai
Norėdami atnaujinti Immich iki naujausios versijos:
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
Visada patikrinkite leidimo pastabas dėl galimų nesuderinamų pakeitimų.
Atsarginės kopijos
Darykite dviejų dalykų atsargines kopijas: įkėlimų aplanko ir duomenų bazės:
# 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
Įdiegta programinė įranga
| Komponentas | Versija |
|---|---|
| Ubuntu | 24.04 LTS |
| Docker | Naujausia |
| Immich | Naujausia |
| PostgreSQL | 14 (Docker) |
| Valkey (Redis) | 9 (Docker) |
| Fail2Ban | 1.0 |
Trikčių šalinimas
| Problema | Sprendimas |
|---|---|
| Žiniatinklio sąsaja neįsikelia po pirmojo paleidimo | Palaukite 1-2 minutes, kol pasileis konteineriai. Patikrinkite: cd /opt/immich && docker compose ps |
| Konteineriai nuolat paleidžiami iš naujo | Žurnalų tikrinimas: cd /opt/immich && docker compose logs --tail 50. Įsitikinkite, kad turite bent 4 GB RAM |
| Mobilioji programėlė negali prisijungti | Patikrinkite, ar serverio URL nurodytas prievadas: http://your.server.ip:2283 |
| Trūksta vietos diske | Išvalykite Docker podėlį: docker system prune -a. Apsvarstykite disko padidinimą kliento skydelyje |
| Užblokavo Fail2Ban | Atblokuokite savo IP per VNC konsolę kliento skydelyje |
| Pamiršote root slaptažodį | Atkurkite jį per VNC konsolę kliento skydelyje |