บอกลา Google Photos: คู่มือติดตั้ง Immich ระบบจัดการรูปภาพส่วนตัวบน Home Server ด้วย Docker
ทวงคืนรูปภาพครอบครัวและความทรงจำส่วนตัวกลับมาเก็บเอง 100% ด้วยคู่มือติดตั้ง Immich บน Home Server ด้วย Docker พร้อมวิธีเซ็ตอัปแอปพลิเคชันบนมือถือและระบบ AI สแกนใบหน้าแบบออฟไลน์
คุณเคยกังวลกับข้อจำกัดพื้นที่เก็บข้อมูลของบริการคลาวด์อย่าง Google Photos หรือ iCloud ไหมครับ? หรืออาจจะรู้สึกไม่สบายใจเมื่อคิดว่า รูปถ่ายครอบครัว รูปภาพส่วนตัว หรือไฟล์ความทรงจำที่ละเอียดอ่อนของเรา กำลังถูกวิเคราะห์โดยอัลกอริทึม AI บนเซิร์ฟเวอร์คลาวด์ของผู้ให้บริการรายใหญ่เพื่อจุดประสงค์บางอย่างที่เราไม่สามารถควบคุมได้
หากคำตอบคือ "ใช่" และคุณมี Home Server ที่ติดตั้ง Docker อยู่แล้ว (จากบทความก่อนหน้านี้ที่เราได้แนะนำวิธีเซ็ตอัปไป) วันนี้เรามีทางเลือกที่จะตอบโจทย์เรื่อง Data Ownership และ Privacy ได้อย่างสมบูรณ์แบบ นั่นคือ Immich ครับ
Immich คือแอปพลิเคชันสำหรับสำรองและจัดการรูปภาพ/วิดีโอแบบ Self-hosted ที่เปิดตัวมาเพื่อเป็นคู่แข่งโดยตรงของ Google Photos โดยมีหน้าตา UI ที่สวยงาม ทันสมัย มีประสิทธิภาพสูง และที่สำคัญคือ มีระบบปัญญาประดิษฐ์ (Local Machine Learning) ที่ช่วยสแกนใบหน้า จัดกลุ่มบุคคล และค้นหารายละเอียดในภาพที่ทำงานภายในเครื่องของเราเองแบบออฟไลน์ 100%
ทำไม Immich ถึงเป็นผู้ท้าชิง Google Photos ที่แท้จริง?
หลายคนอาจจะเคยใช้ซอฟต์แวร์แชร์ไฟล์ตัวอื่น แต่ความเจ๋งของ Immich นั้นอยู่ในระดับที่แตกต่างออกไป:
- แอปพลิเคชันบนมือถือที่เสถียร: มีแอปทั้งบน iOS และ Android ที่รองรับการสำรองรูปภาพอัตโนมัติในเบื้องหลัง (Background Backup) ซึ่งนี่เป็นฟังก์ชันที่สำคัญที่สุดในการเปลี่ยนผ่านจาก Google Photos
- ระบบค้นหารูปภาพอัจฉริยะ (Smart Search): คุณสามารถพิมพ์ค้นหาด้วยภาษาธรรมชาติ เช่น "คนใส่เสื้อสีแดงที่ชายหาด" หรือ "แมวสีขาวนอนบนโซฟา" ระบบ AI ในตัวจะประมวลผลค้นหาภาพให้ทันทีโดยไม่มีการส่งข้อมูลวิเคราะห์ออกไปนอกบ้าน
- ระบบสแกนใบหน้าและแผนที่: จัดกลุ่มใบหน้าคนในครอบครัว (Face Recognition) และแสดงตำแหน่งที่ถ่ายภาพบนแผนที่แบบ Interactive
- รองรับผู้ใช้หลายคน (Multi-user): คุณสามารถสร้างบัญชีแยกให้สมาชิกแต่ละคนในบ้านเข้ามาใช้ร่วมกันได้ โดยมีความเป็นส่วนตัว ข้อมูลของใครของมัน แต่ก็สามารถแชร์อัลบั้มรูปภาพร่วมกันได้อย่างสะดวกสบาย
ขั้นตอนเตรียมความพร้อมก่อนติดตั้ง
ก่อนจะเริ่มรันโปรเจกต์นี้ ขอแนะนำให้คุณสร้างโครงสร้างโฟลเดอร์สำหรับเก็บไฟล์รูปภาพและฐานข้อมูลระบบแยกออกมาให้ชัดเจนบน Home Server ของคุณดังนี้ครับ:
# สร้างโฟลเดอร์หลักสำหรับ Immich
mkdir -p ~/homeserver/immich
cd ~/homeserver/immich
หมายเหตุ: เนื่องจากไฟล์รูปภาพและวิดีโอจะมีขนาดค่อนข้างใหญ่มากในอนาคต แนะนำให้คุณตั้งค่าให้โฟลเดอร์สำหรับเก็บรูปภาพจริง ชี้ไปยังฮาร์ดดิสก์ภายนอก (External HDD) หรือระบบ RAID ที่คุณเตรียมไว้
ขั้นตอนที่ 1: ดาวน์โหลดไฟล์ตั้งค่า docker-compose.yml และ .env
ผู้พัฒนา Immich ได้จัดเตรียมไฟล์ตั้งค่ามาตรฐานที่เหมาะสมไว้ให้แล้ว คุณสามารถดาวน์โหลดไฟล์เวอร์ชันล่าสุดผ่าน command line ได้ทันที:
# ดาวน์โหลดไฟล์ docker-compose.yml
curl -L https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml -o docker-compose.yml
# ดาวน์โหลดไฟล์ตัวอย่าง .env
curl -L https://github.com/immich-app/immich/releases/latest/download/example.env -o .env
จากนั้นเปิดไฟล์ .env ด้วยคำสั่ง nano .env เพื่อปรับแต่งการตั้งค่าเบื้องต้น:
nano .env
จุดสำคัญที่ต้องแก้ไขในไฟล์ .env มีดังนี้:
- UPLOAD_LOCATION: คือไดเรกทอรีที่คุณต้องการใช้บันทึกไฟล์รูปภาพจริง เช่น
./libraryหรือหากต้องการบันทึกไปที่ฮาร์ดดิสก์ภายนอก ให้เปลี่ยนเป็นพาธเต็ม เช่น/mnt/external-hdd/immich - DB_PASSWORD: แนะนำให้เปลี่ยนรหัสผ่านฐานข้อมูล PostgreSQL จากค่าเริ่มต้นเป็นรหัสผ่านที่เดายากของคุณเองเพื่อความปลอดภัย
- IMMICH_VERSION: โดยเริ่มต้นจะตั้งเป็น
releaseซึ่งจะใช้เวอร์ชันล่าสุดที่ปลอดภัยอยู่เสมอ
หลังจากแก้ไขเรียบร้อย กด Ctrl+O เพื่อบันทึก และ Ctrl+X เพื่อปิดโปรแกรม nano
ขั้นตอนที่ 2: สั่งรัน Immich ด้วย Docker Compose
หลังจากตรวจสอบการตั้งค่าเรียบร้อยแล้ว ให้รันคำสั่งด้านล่างนี้เพื่อดึง Image และเปิดบริการทั้งหมด:
docker compose up -d
Docker จะทำการสร้างคอนเทนเนอร์ขึ้นมาทั้งหมด 4 ตัวหลักๆ ได้แก่: 1. immich_server - ระบบประมวลผล backend/frontend หลัก 2. immich_machine_learning - ระบบ AI วิเคราะห์ภาพ สแกนหน้า และคลิปการค้นหา 3. postgres - ฐานข้อมูลเก็บการตั้งค่าและประวัติระบบ 4. redis - ตัวจัดการคิวงานการประมวลผล
เมื่อรันสำเร็จ คุณจะสามารถเข้าใช้งานหน้าควบคุมของ Immich ได้ผ่านเบราว์เซอร์ทางพอร์ต 2283: http://<IP-เซิร์ฟเวอร์ของคุณ>:2283
ขั้นตอนที่ 3: ตั้งค่าเริ่มต้นและเชื่อมต่อผ่านแอปมือถือ
เมื่อเข้าหน้าเว็บครั้งแรก ระบบจะให้คุณทำขั้นตอนเหล่านี้:
- สร้างบัญชีผู้ดูแลระบบ (Admin Account): กรอกอีเมล ตั้งรหัสผ่าน และกรอกข้อมูลโปรไฟล์ของคุณ
- ดาวน์โหลดแอปมือถือ: ค้นหาคำว่า "Immich" ใน App Store หรือ Google Play Store
- ล็อกอินเข้าใช้งาน: เปิดแอปบนโทรศัพท์ กรอก URL เซิร์ฟเวอร์ของคุณ (เช่น
http://192.168.1.100:2283หรือใช้พาธ Tailscale หากเชื่อมต่อจากนอกบ้าน) และกรอกรหัสผ่านที่คุณสร้างไว้ - ตั้งค่าสำรองภาพอัตโนมัติ: เลือกอัลบั้มในมือถือที่ต้องการส่งขึ้นเซิร์ฟเวอร์ และเปิดการทำงาน Background Backup เพื่อเริ่มสำรองข้อมูลของคุณทันที
คำแนะนำเรื่องความปลอดภัยและการสำรองข้อมูล
ความท้าทายหลักของการทำ Self-hosting คือ หากเกิดเหตุขัดข้องทางด้านฮาร์ดแวร์ ข้อมูลรูปภาพทั้งหมดของคุณอาจสูญหายได้ทันที ดังนั้นจึงไม่ควรละเลยสิ่งเหล่านี้:
- การตั้งค่า Backup 3-2-1: นอกจากเก็บไฟล์รูปภาพไว้ในฮาร์ดดิสก์หลักของ Home Server แล้ว ควรมีสคริปต์แบ็กอัปรูปภาพในโฟลเดอร์หลักออกไปเก็บไว้ในอุปกรณ์ NAS หรือ External HDD อีกชิ้นในบ้าน และหากเป็นไปได้ให้แบ็กอัปแบบเข้ารหัสปลอดภัยขึ้นระบบคลาวด์ราคาประหยัด เช่น Backblaze B2 ด้วยซอฟต์แวร์อย่าง Restic
- สำรองข้อมูล Database เสมอ: การแบ็กอัปเพียงไฟล์รูปภาพนั้นอาจทำให้สูญเสียประวัติการจัดระเบียบและแท็กหน้าคนในกรณีที่ระบบพัง ควรมั่นใจว่ามีสคริปต์รันคำสั่ง
pg_dumpเพื่อสำรองฐานข้อมูลของ PostgreSQL ของ Immich เก็บไว้ด้วยเสมอ - อัปเดตระบบอย่างระมัดระวัง: เนื่องจาก Immich ยังเป็นโปรเจกต์ที่มีการพัฒนาและอัปเกรดฟีเจอร์อย่างรวดเร็ว บางเวอร์ชันอาจมี Breaking Changes แนะนำให้อ่านรายละเอียด Release Notes ใน Github เสมอก่อนรันคำสั่ง
docker compose pullเพื่ออัปเดตระบบ
บทสรุป
การเปลี่ยนมาใช้ Immich ไม่เพียงแต่ช่วยคุณประหยัดเงินค่าบริการเก็บรูปภาพรายเดือนในระยะยาวเท่านั้น แต่ยังช่วยปลดแอกภาพถ่ายและความทรงจำส่วนตัวของทุกคนในครอบครัวให้อยู่ภายใต้การดูแลและควบคุมของคุณเองอย่างสมบูรณ์แบบ 100% ความเป็นส่วนตัวและความปลอดภัยที่ได้รับคือความคุ้มค่าที่แท้จริงของการเป็นเจ้าของข้อมูลตัวเองครับ
อุปกรณ์แนะนำสำหรับคู่มือนี้
- HDD WD Red Plus 4TB — ฮาร์ดดิสก์เกรด NAS ออกแบบมาเปิด 24/7 — รูปทั้งชีวิตควรอยู่บนดิสก์ที่ไว้ใจได้
- กล่องใส่ HDD USB 3.0 — ต่อดิสก์เพิ่มกับ Mini PC/โน้ตบุ๊กเก่าได้โดยไม่ต้องแกะเครื่อง
หมายเหตุ: ส่วนนี้เป็นลิงก์แนะนำสินค้า หากซื้อผ่านลิงก์ บล็อกอาจได้รับค่าแนะนำเล็กน้อยโดยราคาที่คุณจ่ายไม่เปลี่ยน — เราเลือกเฉพาะของที่ใช้ได้จริงกับคู่มือนี้เท่านั้น