Language: ur
Immich: VPS پر تصاویر اور ویڈیوز کے لیے اپنا کلاؤڈ بنانا
Immich ایک self-hosted سروس ہے جو تصاویر اور ویڈیوز محفوظ کرتی ہے اور انہیں خودکار طور پر اپ لوڈ کرتی ہے۔ اس میں موبائل ایپس، ویب انٹرفیس، البمز، اسمارٹ سرچ اور چہرے کی شناخت شامل ہیں، جبکہ لائبریری آپ کے منتخب کردہ سرور پر رہتی ہے۔
ذیل میں ہم Immich کی ضروریات، Docker Compose کے ساتھ Ubuntu پر تنصیب، HTTPS کی ترتیب، فون کنکشن اور بیرونی بیک اپ کا جائزہ لیں گے۔
Immich چھ مراحل میں
- کافی RAM اور ڈسک اسپیس والا Linux VPS بنائیں۔
photos.example.comجیسے subdomain کو سرور کے IP ایڈریس کی طرف بھیجیں۔- Docker نصب کریں اور Immich کی سرکاری configuration ڈاؤن لوڈ کریں۔
- میڈیا لائبریری اور database کے راستے درج کریں، پھر containers شروع کریں۔
- اندرونی پورٹ بند کریں اور HTTPS فعال کریں۔
- موبائل ایپ نصب کریں اور بیرونی بیک اپ ترتیب دیں۔
Immich کیا ہے؟
Immich اپنی تصاویر اور ویڈیوز کی لائبریری کے انتظام کے لیے open-source ایپلیکیشن ہے۔ تصاویر timeline پر دکھائی دیتی ہیں، انہیں البمز میں منظم کیا جا سکتا ہے، سرچ کے ذریعے تلاش کیا جا سکتا ہے اور فون سے سرور پر خودکار طور پر اپ لوڈ کیا جا سکتا ہے۔
روایتی cloud photo سروس کے مقابلے میں بنیادی فرق سرور کے حصے پر کنٹرول ہے۔ فائلیں آپ کے VPS یا گھر کے سرور پر محفوظ ہوتی ہیں، لیکن خالی جگہ، اپ ڈیٹس، سیکیورٹی اور بیک اپ کی ذمہ داری مالک کی ہوتی ہے۔
| پیرامیٹر | Cloud photo service | Immich |
|---|---|---|
| فائلیں کہاں محفوظ ہوتی ہیں | فراہم کنندہ کے infrastructure پر | آپ کے سرور پر |
| دیکھ بھال | فراہم کنندہ کرتا ہے | مالک کرتا ہے |
| اخراجات | اسٹوریج پر مبنی plan | VPS، ڈسک اسپیس اور بیک اپ |
Immich خود بیک اپ نہیں ہے۔ اگر تصاویر صرف ایک VPS پر موجود ہوں تو ڈسک کی خرابی یا غلطی سے حذف ہونے سے پورا archive ضائع ہو سکتا ہے۔
Immich کی بنیادی خصوصیات
- خودکار اپ لوڈ۔ Android اور iOS ایپس منتخب البمز سے تصاویر اور ویڈیوز اپ لوڈ کرتی ہیں۔ پہلے سے طے شدہ طور پر Wi-Fi استعمال ہوتا ہے، اور checksum کی بنیاد پر پہلے سے موجود فائلیں چھوڑ دی جاتی ہیں۔
- اسمارٹ سرچ۔ سروس لوگوں، مقام، تاریخ، کیمرے، تصویر میں موجود متن اور مواد کی description سے سرچ کر سکتی ہے۔ چہروں کو گروپ کر کے نام دیے جا سکتے ہیں۔
- البمز اور sharing۔ Immich متعدد صارفین، shared albums، partner sharing اور پاس ورڈ و میعاد والے public links کو سپورٹ کرتا ہے۔
- نقشہ اور metadata۔ Immich EXIF ڈیٹا پڑھتا ہے، تصویر کہاں لی گئی تھی یہ دکھاتا ہے، memories بناتا ہے اور favorites، archive اور external libraries کو سپورٹ کرتا ہے۔
Machine learning ابتدائی import کے دوران CPU اور RAM پر سب سے زیادہ بوجھ ڈالتا ہے۔ thumbnails اور indexes بن جانے کے بعد روزمرہ وسائل کا استعمال عموماً کم ہو جاتا ہے۔
Immich سرور کی ضروریات
موجودہ ورژنز کے لیے سرکاری ضروریات یہ ہیں:
- 64-bit Linux یا Unix-like نظام؛
- کم از کم 2 CPU cores، جبکہ 4 تجویز کیے جاتے ہیں؛
- کم از کم 6 GB RAM، جبکہ 8 GB تجویز کی جاتی ہے؛
docker composeplugin کے ساتھ Docker Engine؛- PostgreSQL database کے لیے مقامی SSD؛
- original files، thumbnails اور transcoded videos کے لیے جگہ۔
اگر machine-learning خصوصیات بند کر دی جائیں تو Immich 4 GB RAM والے سرور پر بھی چل سکتا ہے۔ face recognition اور smart search کے لیے شروع ہی سے 8 GB منتخب کرنا بہتر ہے۔
Thumbnails اور transcoded files میڈیا لائبریری کے سائز میں اوسطاً 10–20% اضافہ کرتے ہیں۔ 200 GB کے archive کے لیے کم از کم 240–260 GB مختص کریں۔ DB_DATA_LOCATION database directory کو network drive کے بجائے مقامی SSD پر رکھنا چاہیے۔
عملی ابتدائی configuration 4 vCPUs، 8 GB RAM، Ubuntu 24.04 LTS اور source library سے 20–30% زیادہ گنجائش والے SSD پر مشتمل ہے۔ dedicated graphics card ضروری نہیں، اگرچہ یہ بڑے archive کی processing تیز کر سکتا ہے۔
VPS پر Immich کیسے نصب کریں
اس مثال میں Ubuntu 24.04 اور photos.example.com subdomain استعمال کیا گیا ہے۔
1. DNS ترتیب دیں اور Ubuntu تیار کریں
A DNS record بنائیں جو 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 session اس وقت تک بند نہ کریں جب تک یہ تصدیق نہ ہو جائے کہ نیا connection کام کرتا ہے۔
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 کمانڈ اب project کے ذریعے support نہیں کی جاتی۔
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اہم parameters تبدیل کریں:
UPLOAD_LOCATION=/srv/immich-data
DB_DATA_LOCATION=/opt/immich/postgres
TZ=Europe/Berlin
DB_PASSWORD=REPLACE_WITH_A_LONG_PASSWORDاپنا time zone درج کریں۔ PostgreSQL password میں Latin حروف اور اعداد ہونے چاہییں؛ openssl rand -hex 24 کمانڈ random value بنائے گی۔ موجودہ example.env فائل کی باقی lines کو جوں کا توں رہنے دیں۔
4. اندرونی پورٹ بند کریں اور containers شروع کریں
docker-compose.yml میں immich-server service کی port تلاش کریں:
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. Caddy کے ساتھ HTTPS فعال کریں
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اگر DNS VPS کی طرف اشارہ کر رہا ہو اور 80 و 443 ports قابل رسائی ہوں تو Caddy خودکار طور پر certificate حاصل کرے گا۔ Immich کو domain یا subdomain کی root پر چلنا چاہیے؛ example.com/immich جیسا address support نہیں ہوتا۔
6. Administrator بنائیں اور فون جوڑیں
https://photos.example.com کھولیں۔ سب سے پہلے registered user کو administrator بنایا جاتا ہے اور وہ اضافی accounts بنا سکتا ہے۔
App Store یا Google Play سے Immich نصب کریں۔ sign-in screen پر /api کے بغیر address درج کریں:
https://photos.example.comالبمز منتخب کریں اور backup فعال کریں۔ پہلا import کچھ وقت لے سکتا ہے: سرور thumbnails بناتا ہے، چہروں کو پہچانتا ہے، search data index کرتا ہے اور ویڈیوز process کرتا ہے۔
Immich کو اپ ڈیٹ کرنا
اپ ڈیٹ سے پہلے release notes پڑھیں، خاص طور پر جب نئی major version پر منتقل ہو رہے ہوں:
cd /opt/immich
docker compose pull
docker compose up -d
docker image pruneپہلے mobile apps اور پھر server اپ ڈیٹ کریں۔ Database کو پرانے version پر واپس لانا ممکن نہیں ہو سکتا، جب تک الگ instructions فراہم نہ کی گئی ہوں۔
Immich کا بیک اپ
Immich خودکار طور پر PostgreSQL dumps بناتا ہے، لیکن ان میں صرف database اور metadata شامل ہوتے ہیں، تصاویر اور ویڈیوز نہیں۔ مکمل recovery کے لیے یہ چیزیں محفوظ کریں:
- پورا
/srv/immich-datadirectory؛ /opt/immich/.envاورdocker-compose.yml؛- Caddy configuration۔
اسی VPS پر موجود copy ڈسک کی خرابی یا سرور حذف ہونے سے نہیں بچاتی۔ ڈیٹا کو الگ server، NAS یا object storage پر بھیجیں اور 3-2-1 backup strategy پر عمل کریں۔ صرف backup files کی موجودگی نہیں، بلکہ restore بھی باقاعدگی سے test کریں۔
Immich کے لیے کون سا VPS منتخب کریں
Face recognition اور smart search سمیت مکمل functionality کے لیے کم از کم 4 vCPUs اور 8 GB RAM والا VPS مناسب ہے۔ ڈسک کا سائز media library کی بنیاد پر نکالیں، thumbnails، ویڈیوز اور archive growth کے لیے اضافی گنجائش کے ساتھ۔
tropic.host کا static IP اور SSD storage والا Linux VPS اس کام کے لیے موزوں ہے۔ 8 GB RAM configuration سے شروع کر کے library بڑھنے پر وسائل میں اضافہ کیا جا سکتا ہے۔ PostgreSQL database کو تیز مقامی disk پر رکھیں اور backup اس VPS سے باہر محفوظ کریں۔
VPS ہر network سے چوبیس گھنٹے رسائی کے لیے آسان ہے۔ کئی terabytes کے archive کے لیے home server سستا ہو سکتا ہے، لیکن بجلی، بیرونی رسائی اور redundancy کا انتظام آپ کو خود کرنا ہوگا۔
Immich کی حدود
Self-hosting reliability کی ضمانت نہیں دیتی۔ کمزور password، کھلی port 2283، پرانے containers یا بیرونی backup کی عدم موجودگی data loss کا خطرہ پیدا کرتی ہے۔
Immich Google Photos یا iCloud کی عین copy بھی نہیں ہے: editing اور background synchronization مختلف ہو سکتے ہیں، اور analysis کی رفتار hardware پر منحصر ہے۔ اپنا واحد archive منتقل کرنے سے پہلے چھوٹی library پر service آزمائیں۔
نتیجہ
Immich موبائل uploads، albums، face recognition، search اور sharing کے ساتھ اپنی photo gallery بنانے دیتا ہے۔ موجودہ version کے لیے 4 cores، 8 GB RAM اور کم از کم 20–30% خالی گنجائش والے SSD کا Linux VPS تیار کرنا بہتر ہے۔
تنصیب کے بعد media directory اور database کے بیرونی backup کے ساتھ HTTPS اور updates بھی ترتیب دیں۔ تصاویر کو loss سے بچانے والی چیز صرف self-hosting نہیں بلکہ backup ہے۔
FAQ
کیا Immich مفت ہے؟
Immich server open source ہے اور لازمی subscription کے بغیر چل سکتا ہے۔ پھر بھی VPS، domain، disk space اور backups کے اخراجات ہوں گے۔
Immich کو کتنی RAM چاہیے؟
سرکاری minimum 6 GB RAM ہے، جبکہ 8 GB تجویز کی جاتی ہے۔ 4 GB پر machine learning بند کرنا پڑے گا۔
کیا Immich کو domain کے بغیر نصب کیا جا سکتا ہے؟
تکنیکی طور پر ہاں، لیکن فون سے مستقل رسائی کے لیے domain اور HTTPS استعمال کرنا بہتر ہے۔ اس سے authentication اور file transfers محفوظ رہتے ہیں۔
کیا Immich photo backup کی جگہ لے لیتا ہے؟
نہیں۔ Media library اور database کو الگ device یا location پر copy کریں۔
کیا موجودہ photo archive منتقل کیا جا سکتا ہے؟
ہاں۔ فائلیں web interface یا CLI سے upload کی جا سکتی ہیں، یا directory کو external library کے طور پر جوڑا جا سکتا ہے۔ بڑے import سے پہلے source data کی copy ضرور بنائیں۔
