Tropic Host

Immich-ը VPS-ում․ ստեղծեք ձեր սեփական ամպը լուսանկարների և տեսանյութերի համար

2 րոպե կարդալ
Tropic
Immich-ը VPS-ում․ ստեղծեք ձեր սեփական ամպը լուսանկարների և տեսանյութերի համար

Language: hy

Immich․ լուսանկարների և տեսանյութերի սեփական ամպի ստեղծում VPS-ում

Immich-ը լուսանկարներն ու տեսանյութերը պահելու և ավտոմատ վերբեռնելու համար նախատեսված սեփական սերվերում տեղադրվող ծառայություն է։ Այն առաջարկում է բջջային հավելվածներ, վեբ ինտերֆեյս, ալբոմներ, խելացի որոնում և դեմքերի ճանաչում՝ գրադարանը պահելով ձեր ընտրած սերվերում։

Ստորև կքննարկենք Immich-ի պահանջները, Ubuntu-ում Docker Compose-ով տեղադրումը, HTTPS-ի կարգավորումը, հեռախոսի միացումը և արտաքին պահուստավորումը։

Immich-ը վեց քայլով

  1. Ստեղծեք Linux VPS՝ բավարար RAM-ով և սկավառակի տարածքով։
  2. Ուղղեք ենթադոմեյնը, օրինակ՝ photos.example.com, դեպի սերվերի IP հասցեն։
  3. Տեղադրեք Docker-ը և ներբեռնեք Immich-ի պաշտոնական կազմաձևումը։
  4. Նշեք մեդիա գրադարանի և տվյալների բազայի ուղիները, ապա գործարկեք կոնտեյներները։
  5. Փակեք ներքին պորտը և միացրեք HTTPS-ը։
  6. Տեղադրեք բջջային հավելվածը և կարգավորեք արտաքին պահուստավորումը։

Ի՞նչ է Immich-ը

Immich-ը բաց կոդով հավելված է սեփական լուսանկարների և տեսանյութերի գրադարանը կառավարելու համար։ Լուսանկարները հայտնվում են ժամանակագծում, կարող են խմբավորվել ալբոմներում, գտնվել որոնմամբ և հեռախոսից ավտոմատ վերբեռնվել սերվեր։

Սովորական լուսանկարների ամպային ծառայությունից հիմնական տարբերությունը սերվերի կողմի նկատմամբ վերահսկողությունն է։ Ֆայլերը պահվում են ձեր VPS-ում կամ տնային սերվերում, բայց ազատ տարածքի, թարմացումների, անվտանգության և պահուստների պատասխանատվությունը մնում է սեփականատիրոջ վրա։

ՊարամետրԼուսանկարների ամպային ծառայությունImmich
Որտեղ են պահվում ֆայլերըՄատակարարի ենթակառուցվածքումՁեր սերվերում
ՍպասարկումԿատարում է մատակարարըԿատարում է սեփականատերը
ԾախսերՊահեստի ծավալով պայմանավորված պլանVPS, սկավառակի տարածք և պահուստներ

Immich-ն ինքնին պահուստային պատճեն չէ։ Եթե լուսանկարները կան միայն մեկ VPS-ում, սկավառակի խափանումը կամ պատահական ջնջումը դեռ կարող է ոչնչացնել արխիվը։

Immich-ի հիմնական հնարավորությունները

  • Ավտոմատ վերբեռնումներ։ Android-ի և iOS-ի հավելվածները վերբեռնում են ընտրված ալբոմների լուսանկարներն ու տեսանյութերը։ Լռելյայն օգտագործվում է Wi‑Fi-ը, իսկ արդեն գոյություն ունեցող ֆայլերը բաց են թողնվում՝ ըստ checksum-ի։
  • Խելացի որոնում։ Ծառայությունը կարող է որոնել մարդկանց, վայրի, ամսաթվի, տեսախցիկի, լուսանկարի տեքստի և բովանդակության նկարագրության հիման վրա։ Դեմքերը խմբավորվում են և կարող են անուններ ստանալ։
  • Ալբոմներ և կիսում։ Immich-ը աջակցում է մի քանի օգտատերերի, ընդհանուր ալբոմների, զուգընկերոջ հետ կիսման և գաղտնաբառով ու ժամկետով հանրային հղումների։
  • Քարտեզ և մետատվյալներ։ Immich-ը կարդում է EXIF տվյալները, ցուցադրում լուսանկարի նկարահանման վայրը, ստեղծում հիշողություններ և աջակցում է ընտրյալներին, արխիվին ու արտաքին գրադարաններին։

Մեքենայական ուսուցումը CPU-ի և RAM-ի ամենամեծ ծանրաբեռնվածությունն առաջացնում է սկզբնական ներմուծման ժամանակ։ Մանրապատկերների և ինդեքսների ստեղծումից հետո ամենօրյա ռեսուրսների օգտագործումը սովորաբար նվազում է։

Immich սերվերի պահանջները

Ընթացիկ տարբերակների պաշտոնական պահանջներն են․

  • 64-բիթանոց Linux կամ Unix-like համակարգ;
  • առնվազն 2 CPU միջուկ, խորհուրդ է տրվում 4-ը;
  • առնվազն 6 GB RAM, խորհուրդ է տրվում 8 GB;
  • Docker Engine՝ docker compose պլագինով;
  • տեղական SSD PostgreSQL տվյալների բազայի համար;
  • տարածք բնօրինակ ֆայլերի, մանրապատկերների և տրանսկոդավորված տեսանյութերի համար։

Immich-ը կարող է աշխատել 4 GB RAM ունեցող սերվերում, եթե մեքենայական ուսուցման հնարավորություններն անջատված են։ Դեմքերի ճանաչման և խելացի որոնման համար սկզբից ընտրեք 8 GB։

Մանրապատկերներն ու տրանսկոդավորված ֆայլերը մեդիա գրադարանի չափին միջինում ավելացնում են 10–20%։ 200 GB արխիվի համար հատկացրեք առնվազն 240–260 GB։ DB_DATA_LOCATION տվյալների բազայի դիրեկտորիան պետք է պահվի տեղական SSD-ում, ոչ թե ցանցային սկավառակում։

Գործնական մեկնարկային կազմաձև է 4 vCPU, 8 GB RAM, Ubuntu 24.04 LTS և աղբյուրի գրադարանից առնվազն 20–30% ավելի տարողունակ SSD։ Առանձին գրաֆիկական քարտ անհրաժեշտ չէ, թեև այն կարող է արագացնել մեծ արխիվի մշակումը։

Ինչպես տեղադրել Immich-ը VPS-ում

Այս օրինակում օգտագործվում են Ubuntu 24.04-ը և photos.example.com ենթադոմեյնը։

1. Կարգավորեք DNS-ը և պատրաստեք Ubuntu-ն

Ստեղծեք A տիպի DNS գրառում, որը մատնանշում է VPS-ի IPv4 հասցեն։ Այնուհետև միացեք SSH-ով․

ssh root@SERVER_IP
apt update && apt upgrade -y

ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable

Մի փակեք ընթացիկ SSH սեսիան, քանի դեռ չեք ստուգել, որ նոր միացումը աշխատում է։

2. Տեղադրեք Docker-ը և Docker Compose-ը

apt install -y ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
  -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc

tee /etc/apt/sources.list.d/docker.sources > /dev/null <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

apt update
apt install -y docker-ce docker-ce-cli containerd.io \
  docker-buildx-plugin docker-compose-plugin
docker compose version

Հատկապես օգտագործեք docker compose հրամանը․ հին docker-compose հրամանն այլևս չի աջակցվում նախագծի կողմից։

3. Ներբեռնեք և կազմաձևեք Immich-ը

mkdir -p /opt/immich /srv/immich-data
cd /opt/immich

curl -L -o docker-compose.yml \
  https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
curl -L -o .env \
  https://github.com/immich-app/immich/releases/latest/download/example.env

Բացեք ֆայլը․

nano /opt/immich/.env

Փոխեք հիմնական պարամետրերը․

UPLOAD_LOCATION=/srv/immich-data
DB_DATA_LOCATION=/opt/immich/postgres
TZ=Europe/Berlin
DB_PASSWORD=REPLACE_WITH_A_LONG_PASSWORD

Նշեք ձեր ժամային գոտին։ PostgreSQL-ի գաղտնաբառը պետք է պարունակի լատինատառեր և թվեր․ openssl rand -hex 24 հրամանը կստեղծի պատահական արժեք։ Մնացած տողերը թողեք այնպես, ինչպես դրանք կան ընթացիկ example.env ֆայլում։

4. Փակեք ներքին պորտը և գործարկեք կոնտեյներները

docker-compose.yml-ում գտեք immich-server ծառայության պորտը․

ports:
  - '2283:2283'

Փոխարինեք այն հետևյալով․

ports:
  - '127.0.0.1:2283:2283'

Այժմ պորտը հասանելի է միայն հենց VPS-ից։ Գործարկեք ծառայությունը․

cd /opt/immich
docker compose up -d
docker compose ps

Ախտորոշման համար օգտագործեք docker compose logs --tail=200։

5. Միացրեք HTTPS-ը Caddy-ով

apt install -y caddy

cat > /etc/caddy/Caddyfile <<'EOF'
photos.example.com {
    reverse_proxy 127.0.0.1:2283
}
EOF

caddy validate --config /etc/caddy/Caddyfile
systemctl reload caddy

Caddy-ն ավտոմատ կպահանջի վկայագիր, եթե DNS-ը մատնանշում է VPS-ը, իսկ 80 և 443 պորտերը հասանելի են։ Immich-ը պետք է աշխատի դոմեյնի կամ ենթադոմեյնի արմատում․ example.com/immich հասցեն չի աջակցվում։

6. Ստեղծեք ադմինիստրատոր և միացրեք հեռախոսը

Բացեք https://photos.example.com. Առաջին գրանցված օգտատերը դառնում է ադմինիստրատոր և կարող է ստեղծել լրացուցիչ հաշիվներ։

Տեղադրեք Immich-ը App Store-ից կամ Google Play-ից։ Մուտքի էկրանին մուտքագրեք հասցեն առանց /api-ի․

https://photos.example.com

Ընտրեք ալբոմները և միացրեք պահուստավորումը։ Առաջին ներմուծումը կարող է ժամանակ պահանջել․ սերվերը ստեղծում է մանրապատկերներ, ճանաչում դեմքերը, ինդեքսավորում որոնման տվյալները և մշակում տեսանյութերը։

Immich-ի թարմացում

Թարմացումից առաջ կարդացեք թողարկման նշումները, հատկապես երբ անցնում եք նոր հիմնական տարբերակի․

cd /opt/immich
docker compose pull
docker compose up -d
docker image prune

Սկզբում թարմացրեք բջջային հավելվածները, ապա՝ սերվերը։ Տվյալների բազան հին տարբերակին վերադարձնելը կարող է չաջակցվել, եթե դրա համար առանձին հրահանգներ չկան։

Immich-ի պահուստավորում

Immich-ը ավտոմատ ստեղծում է PostgreSQL dump-եր, սակայն դրանք պարունակում են միայն տվյալների բազան և մետատվյալները, ոչ թե լուսանկարներն ու տեսանյութերը։ Ամբողջական վերականգնման համար պահեք․

  • ամբողջ /srv/immich-data դիրեկտորիան;
  • /opt/immich/.env և docker-compose.yml ֆայլերը;
  • Caddy-ի կազմաձևումը։

Նույն VPS-ում պահվող պատճենը չի պաշտպանում սկավառակի խափանումից կամ սերվերի ջնջումից։ Տվյալներն ուղարկեք առանձին սերվեր, NAS կամ օբյեկտների պահոց և հետևեք 3-2-1 պահուստավորման ռազմավարությանը։ Պարբերաբար փորձարկեք վերականգնումը՝ միայն պահուստային ֆայլերի գոյությունը ստուգելու փոխարեն։

Ո՞ր VPS-ն ընտրել Immich-ի համար

Դեմքերի ճանաչմամբ և խելացի որոնմամբ ամբողջական աշխատանքի համար խելամիտ է ընտրել առնվազն 4 vCPU և 8 GB RAM ունեցող VPS։ Սկավառակի չափը հաշվարկեք մեդիա գրադարանի հիման վրա՝ ավելացնելով տարածք մանրապատկերների, տեսանյութերի և արխիվի աճի համար։

Այս առաջադրանքի համար հարմար է tropic.host-ի Linux VPS-ը՝ ստատիկ IP հասցեով և SSD պահոցով։ Կարող եք սկսել 8 GB RAM-ով և գրադարանի աճին զուգահեռ ավելացնել ռեսուրսները։ PostgreSQL տվյալների բազան պահեք արագ տեղական սկավառակում, իսկ պահուստը՝ այս VPS-ից դուրս։

VPS-ը հարմար է ցանկացած ցանցից շուրջօրյա մուտքի համար։ Մի քանի տերաբայթանոց արխիվի դեպքում տնային սերվերը կարող է ավելի էժան լինել, սակայն էլեկտրամատակարարումը, արտաքին հասանելիությունը և ավելցուկայնությունը պետք է ինքներդ ապահովեք։

Immich-ի սահմանափակումները

Սեփական սերվերում տեղադրումը չի երաշխավորում հուսալիություն։ Թույլ գաղտնաբառը, բաց 2283 պորտը, չթարմացված կոնտեյներները կամ արտաքին պահուստի բացակայությունը տվյալների կորստի վտանգ են ստեղծում։

Immich-ը նաև Google Photos-ի կամ iCloud-ի ճշգրիտ պատճենը չէ․ խմբագրման և ֆոնային համաժամացման հնարավորությունները տարբեր են, իսկ վերլուծության արագությունը կախված է սարքավորումից։ Միակ արխիվը տեղափոխելուց առաջ փորձարկեք ծառայությունը փոքր գրադարանով։

Եզրակացություն

Immich-ը թույլ է տալիս ստեղծել ձեր սեփական լուսանկարների պատկերասրահը՝ բջջային վերբեռնումներով, ալբոմներով, դեմքերի ճանաչմամբ, որոնմամբ և կիսմամբ։ Ընթացիկ տարբերակի համար լավագույնն է պատրաստել 4 միջուկով, 8 GB RAM-ով Linux VPS և առնվազն 20–30% ազատ տարածք ունեցող SSD։

Տեղադրումից հետո կարգավորեք HTTPS-ը, թարմացումները և մեդիայի դիրեկտորիայի արտաքին պահուստը տվյալների բազայի հետ միասին։ Լուսանկարները կորստից պաշտպանում է պահուստը, ոչ թե ինքնուրույն տեղադրումը։

FAQ

Immich-ն անվճա՞ր է

Immich սերվերը բաց կոդով է և կարող է աշխատել առանց պարտադիր բաժանորդագրության։ Այնուամենայնիվ պետք է վճարեք VPS-ի, դոմենի, սկավառակի տարածքի և պահուստների համար։

Որքա՞ն RAM է պետք Immich-ին

Պաշտոնական նվազագույնը 6 GB RAM է, իսկ խորհուրդ է տրվում 8 GB։ 4 GB-ի դեպքում պետք է անջատեք մեքենայական ուսուցումը։

Կարո՞ղ եմ Immich-ը տեղադրել առանց դոմեյնի

Տեխնիկապես՝ այո, սակայն հեռախոսից մշտական մուտքի համար ավելի լավ է օգտագործել դոմեյն և HTTPS։ Դրանք պաշտպանում են նույնականացումն ու ֆայլերի փոխանցումը։

Immich-ը փոխարինո՞ւմ է լուսանկարների պահուստավորմանը

Ոչ։ Մեդիա գրադարանը և տվյալների բազան առանձին պատճենեք մեկ այլ սարքի կամ վայրի վրա։

Կարո՞ղ եմ տեղափոխել առկա լուսանկարների արխիվը

Այո։ Ֆայլերը կարելի է վերբեռնել վեբ ինտերֆեյսով կամ CLI-ով, կամ դիրեկտորիան միացնել որպես արտաքին գրադարան։ Մեծածավալ ներմուծումից առաջ ստեղծեք աղբյուրի տվյալների պատճենը։