Google Photos راهحل برتر ذخیرهسازی و پشتیبانگیری از عکسها است که بهصورت بیدردسر تصاویر شما را از تلفنتان به ابر منتقل میکند. اما اگر نمیخواهید عکسهای شخصی خود را با گوگل به اشتراک بگذارید، گزینههای دیگری موجود هستند.
Google Photos راهکار اصلی ذخیرهسازی و پشتیبانگیری از عکسها است که به راحتی تصاویر شما را از گوشی به ابر منتقل میکند. اما اگر نمیخواهید عکسهای شخصی خود را با گوگل به اشتراک بگذارید، گزینههای دیگری وجود دارد.
اگرچه راهکارهای میزبانی شخصی متعددی برای Raspberry Pi وجود دارد، Immich نسبت به اکثر رقبا برتری چشمگیری دارد. این سرویس یادگیری ماشین، چند کاربر، طبقهبندی خودکار تصویر، تشخیص چهره، برنامههای بومی اندروید و iOS و مجموعهای از ویژگیهای دیگر را ارائه میدهد.
چرا نصب Immich بر روی Raspberry Pi؟

عکسها بخشهایی از زندگی ما را به تصویر میکشند که ارزش حفظ در حافظه را دارند و میخواهیم در آینده به یاد آوریم. آنها یادگاریهای لحظات خوب، وعدههای غذایی عالی، روزهای خوش و تعطیلات هستند.
در دهههای گذشته، برای ثبت این لحظات باید یک دوربین فیلم یا دیجیتال همراه خود داشته باشید، سپس یا عکسها را چاپ میکردید یا بهصورت دستی فایلها را به کامپیوتر منتقل میکردید.
امروزه تقریباً همه یک گوشی با دو یا چند دوربین داخلی دارند، و بهترین دوربینهای گوشی به اندازهای هستند که عکاسان حرفهای میتوانند از آنها استفاده کنند.
بارگذاری خودکار
اغلب اوقات، وقتی یک عکس میگیرید، بهصورت خودکار به گوگل یا اپل آپلود میشود و میتوانید از هر دستگاهی با استفاده از رابط وب یا برنامه به آن دسترسی داشته باشید. اما دلایل خوبی وجود دارد که نخواهید به یک طرفثالث برای میزبانی تصاویر خود تکیه کنید.
علاوه بر این، این سرویسها پس از عبور از حد ذخیرهسازی (در حال حاضر ۱۵ گیگابایت برای گوگل و ۵ گیگابایت برای اپل) هزینه میطلبند؛ و نمیتوانید مطمئن باشید که شرکتها به آرشیو عکسهای شما نفوذ نمیکنند یا از تصاویر شما برای آموزش هوشهای مصنوعی مولد استفاده نمیکنند.
ذخیرهسازی عکس در ابر فقط به ذخیره و دسترسی به تصاویر محدود نمیشود؛ در سالهای اخیر به آلبومهای خودکار، تشخیص چهره، خطزمان، شناسایی اشیاء، یادآورهای لحظات مهم و خطزمان قابل جستجو عادت کردهایم. به طور طبیعی، این سرویس باید همراه با برنامههای موبایل جذاب باشد که از طریق آنها میتوانید عکسهای خود را به ابر بارگذاری کنید.
Immich نرمافزار متن باز میزبانی شخصی است که تمام اینها و بیشتر را انجام میدهد. در اینجا نحوه نصب Immich بر روی Raspberry Pi شما آورده شده است. پیش از ادامه، باید عکسهای خود را از گوگل دانلود کنید یا تصاویر خود را از iCloud استخراج کنید.
چگونه Immich را بر روی Raspberry Pi نصب کنیم
قبل از شروع، باید Raspberry Pi خود را بهعنوان یک سرور وب تنظیم کنید. اگرچه برای نصب Immich به طور دقیق به MariaDB یا PHP نیاز ندارید، ممکن است برای پروژههای میزبانی شخصی دیگر مفید باشند. همچنین باید آخرین نسخه Docker Compose را بهصورت دستی نصب کنید.
پس از اینکه Pi شما بهعنوان یک سرور وب پایه کار میکرد، یک پوشه جدید برای Immich ایجاد کنید و سپس به آن وارد شوید:
mkdir ~/immich && cd ~/immich
همچنین باید یک پوشه برای فایلهای بارگذاری شده ایجاد کنید
mkdir immich-uploads
بعداً به مسیر مطلق این پوشه نیاز خواهید داشت، بنابراین به آن وارد شوید و از دستور pwd برای یافتن دقیق مکان آن در سیستم فایل استفاده کنید:
cd immich-uploads pwd
نتیجه را یادداشت کنید و ایمن نگه دارید. سپس یک سطح بالا بروید و از wget برای دانلود فایل docker-compose.yml و فایل محیطی Immich استفاده کنید؛ این دستورات را بهصورت جداگانه وارد کنید:
cd.. wget https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env
فایل محیطی .env شامل متغیرهایی است که قبل از فعالسازی Immich باید تغییر دهید. برای باز کردن این فایل از ویرایشگر nano استفاده کنید:
nano .env

مکان بارگذاری را به پوشهای که قبلاً ایجاد کردهاید تنظیم کنید. این تنها تغییر لازم در فایل است، اما در صورت تمایل میتوانید گزینههای پیکربندی دیگری را نیز تنظیم کنید.
اگر میخواهید Immich بتواند عکسهای شما را با نام مکانی که گرفته شدهاند برچسب بزند، به بخش Reverse Geocoding پایین بروید و خطوط Reverse Geocoding و REVERSE_GEOCODING_PRECISION را از حالت کامنت خارج کنید.
Immich چهار سطح دقت ارائه میدهد. 3 دقیقترین است و شهرهای با جمعیت بیش از ۵۰۰ نفر را نام میبرد. این سطح دقت حافظه بیشتری مصرف میکند و برای فعالسازی آن به ۲۰۰ مگابایت RAM نیاز است. در مقابل، تنظیم مقدار به 0 شهرهایی با جمعیت بیش از ۵۰٬۰۰۰ نفر را نام میبرد و تنها ۴۰ مگابایت حافظه مصرف میکند.
مقدار PUBLIC_LOGIN_PAGE_MESSAGE را به هر پیامی که میخواهید کاربران پیش از ورود به سایت ببینند، تغییر دهید.
وقتی از تغییرات خود راضی شدید، با Ctrl + O ذخیره کنید و سپس با Ctrl + X خارج شوید.

دستور زیر Docker Compose را در حالت detached اجرا میکند و تصاویر مورد نیاز را دانلود کرده و کانتینرهای لازم برای اجرای Immich را تنظیم می نماید.
docker-compose up -d
این فرآیند چند دقیقه زمان میبرد؛ در این مدت میتوانید برخی پادکستهای عالی را در ترمینال خود بررسی کنید. وقتی Immich آنلاین شد، وباپ را در مرورگر خود به آدرس your-pi-local-ip-address:2283 مراجعه کنید.

روی Get started کلیک کنید، سپس یک کاربر مدیر ایجاد کنید. سرور Immich شما در آینده در وب در دسترس خواهد بود، بنابراین حتماً از یک رمز عبور قوی و غیرقابل حدس استفاده کنید و سپس روی Sign up کلیک کنید. بعداً باید با آدرس ایمیل و رمز عبور خود وارد شوید.
آپلود عکسهای خود در Immich
اگر از صفر شروع نمیکنید، احتمالاً میخواهید آرشیو عکسهای موجود خود را به Immich جدید بارگذاری کنید. اگرچه میتوانید دکمه Upload را در بالای سمت راست رابط وب کلیک کنید و تصاویر را بهصورت دستی انتخاب کنید، این روش برای هزاران عکس در یک آرشیو چند گیگابایتی عملی نیست.
توسعهدهندگان Immich ابزار CLI ایجاد کردهاند که میتوانید برای بارگذاری دستهجمعی تصاویر خود به Immich استفاده کنید. اگرچه استفاده از کپی امن (SCP) برای انتقال فایلها جذاب به نظر میرسد، Immich آنها را تشخیص نمیدهد.
شما باید ابزار CLI بارگذاری را بر روی سیستم محلی خود نصب کنید، نه بر روی Pi. اما ابتدا باید Node Package Manager و Node.js نسخه ۱۶ یا بالاتر داشته باشید. میتوانید npm و Node.js را بر روی ویندوز نصب کنید و حتی آسانتر میتوانید آنها را بر روی لینوکس نصب کنید.
در وباپ، روی آیکون کاربر یا حروف اول نام کاربری خود در سمت راست بالای صفحه کلیک کنید، سپس Account Settings > API Keys > New API Key را انتخاب کنید.

به کلید یک نام بدهید، سپس روی Create کلیک کنید. Immich یک کلید API جدید تولید میکند—آن را یادداشت کنید.
در پنجره ترمینال یا خط فرمان، به پوشهای که تصاویر شما در آن ذخیره شدهاند بروید و دستور زیر را وارد کنید:
immich upload --key your-generated-API-key --server http://your-pi-local-ip-address:2283/api --recursive .
وقتی پرسیده شد که آیا میخواهید فرآیند بارگذاری را شروع کنید، y را فشار دهید و صبر کنید؛ این کار ممکن است زمانبر باشد. برای مقایسه، بارگذاری آرشیو ۸۲ گیگابایتی ما شامل بیش از ۴۰٬۰۰۰ تصویر حدود شش ساعت طول کشید، که تنها بخشی از کار بود.
پس از تکمیل بارگذاری، Immich تصاویر شما را پردازش میکند، متادادهها استخراج میشود، چهرهها برچسبگذاری میشوند و الگوریتمهای شناسایی اشیاء اجرا میشود. در این زمان، رابط وب کمتر پاسخگو خواهد بود و ممکن است تصاویر به ترتیب نادرست نمایش داده شوند. برای آرشیو ما، این فرآیند حدود چهار روز بر روی Raspberry Pi 4B با ۸ گیگابایت RAM طول کشید—اگرچه تأثیر قابلمشاهدی بر دیگر سرویسهای میزبانی شده نداشت.
میتوانید پیشرفت را از طریق رابط وب با کلیک بر Administration > Jobs پیگیری کنید. Immich چندین کار را بهصورت همزمان پردازش میکند؛ برای تغییر این مقادیر و احتمالاً سرعت بخشیدن به فرآیند، به Administration > Settings > Job settings بروید و همزمانی را به دلخواه تنظیم کنید.
نمایش Immich بر روی وب
برای سرور Immich خود باید یک فایل پیکربندی Apache ایجاد کنید:
<VirtualHost *:80> ServerName your-domain-name.tld ProxyPass / http://127.0.0.1:2283/ ProxyPassReverse / http:/127.0.0.1:2283/ ProxyPreserveHost On </VirtualHost>
با Ctrl + O ذخیره کنید و سپس با Ctrl + X خارج شوید. فایل پیکربندی را فعال کنید و سپس Apache را دوباره راهاندازی کنید:
sudo a2ensite immich.conf && sudo service apache2 restart
از Certbot برای دریافت و استقرار گواهینامهها و کلیدهای TLS استفاده کنید:
sudo certbot
نام دامنه خود را از فهرست انتخاب کنید و Enter را بزنید. سپس Apache را دوباره راهاندازی کنید:
sudo service apache2 restart
اکنون میتوانید با استفاده از نام دامنه خود به وباپ Immich دسترسی پیدا کنید.
استفاده از برنامههای موبایل با Immich




اگر از Immich برای تکثیر قابلیتهای خدمات تجاری استفاده میکنید، به یک برنامه همراه در تلفن خود نیاز دارید. Immich برای اندروید و iOS در دسترس است و از بارگذاری و مشاهده تصاویر و ویدیوها، ناوبری سریع و پشتیبانگیری خودکار، جستجو و موارد دیگر پشتیبانی میکند.
برای شروع، URL Immich خود را وارد کنید، شامل پیشوند https://، و با اعتبارهای مدیر وارد شوید. باید به برنامه اجازه دسترسی به عکسها و ویدیوهای خود را بدهید.
رابط کاربری ساده و شهودی است و میتوانید بدون هیچ راهنماییای بیشتر از آن استفاده کنید. روی آیکون ابر در گوشه سمت راست بالا کلیک کنید و آلبومهای محلی که میخواهید پشتیبانگیری کنید، بهعلاوه فعالسازی پشتیبانگیری خودکار در پیشزمینه و پسزمینه، انتخاب کنید.
دانلود: Immich برای iOS | Android (Play Store) | Android (F-Droid)
Immich یک پروژه در حال پیشرفت است
توسعه Immich بهطور مستمر ادامه دارد و علیرغم اینکه این پروژه تنها از سال ۲۰۲۲ شروع شده است، بدون شک جایگزینی بسیار کارآمد و میزبانی شخصی برای iCloud یا Google Photos ارائه میدهد.
اگر پروژهای که کمی بالغتر باشد را ترجیح میدهید، بهجای آن میتوانید PhotoPrism را بر روی Raspberry Pi خود نصب کنید.
