ค้นพบความสนใจของคุณ ไปด้วยกัน

ดีลจริง รีวิวตรงไปตรงมา และเรื่องราวการช้อปปิ้งจากคนที่มีความสนใจเดียวกับคุณ — ทุกวันบน ZestBuy

ค้นพบความสนใจของคุณ ไปด้วยกันดีลจริง รีวิวตรงไปตรงมา และเรื่องราวการช้อปปิ้งจากคนที่มีความสนใจเดียวกับคุณ — ทุกวันบน ZestBuy

สร้างเซิร์ฟเวอร์ภาพถ่ายส่วนตัวบน NAS ด้วย Docker

สร้างเซิร์ฟเวอร์ภาพถ่ายส่วนตัวบน NAS ด้วย Docker
ความสนใจ|การตั้งค่า NAS

เซิร์ฟเวอร์ภาพถ่ายส่วนตัวคืออะไร และเหมาะกับใคร

เซิร์ฟเวอร์ภาพถ่ายส่วนตัวคือระบบเก็บและจัดการรูปภาพที่เราติดตั้งเองบนอุปกรณ์อย่าง NAS หรือคอมพิวเตอร์เก่า โดยใช้ซอฟต์แวร์โอเพนซอร์สเพื่อสำรอง จัดระเบียบ และเข้าถึงภาพจากมือถือหรือคอมเครื่องอื่น โดยไม่ต้องส่งไฟล์ขึ้นไปอยู่บนเซิร์ฟเวอร์ของบริษัทผู้ให้บริการคลาวด์ และยังสามารถตั้งค่าการสำรองอัตโนมัติและสิทธิ์การเข้าถึงเองได้ตามต้องการ.

ถ้าคุณเคยอัปโหลดรูปทั้งหมดขึ้นบริการภาพถ่ายบนคลาวด์แล้วเริ่มกังวลว่าทุกอย่างไปกองอยู่ที่ผู้ให้บริการเจ้าเดียว การมีเซิร์ฟเวอร์ภาพถ่ายส่วนตัวจะช่วยให้รู้ชัดว่ารูปอยู่บนดิสก์ใด โฟลเดอร์ไหน และสำรองไว้อย่างไร โดยแหล่งข้อมูลหนึ่งอธิบายว่าการตั้งค่าระบบสำรองภาพบนเครื่องของตัวเองทำให้ไฟล์ไม่ได้อยู่บนเซิร์ฟเวอร์ของผู้ให้บริการอีกต่อไป แต่เก็บอย่างปลอดภัยในตำแหน่งที่เรากำหนดเอง.

กลุ่มที่ควรสนใจคือคนที่ถ่ายรูปเยอะ ใช้หลายอุปกรณ์ (มือถือ กล้อง คอม) ไม่อยากจ่ายค่าคลาวด์ระยะยาว และพอจะคุ้นกับการเปิด Terminal หรือ Command Line บ้าง เพราะงานส่วนหนึ่งจะต้องใช้คำสั่ง Docker และ SSH ในการจัดการคอนเทนเนอร์และสำรองข้อมูลจากเครื่องอื่นๆ.

เตรียมอุปกรณ์: NAS, คอมเก่า, Docker และเครื่องสำรอง

ก่อนลงมือสร้างเซิร์ฟเวอร์ภาพถ่ายส่วนตัวบน NAS หรือคอมเก่า สิ่งสำคัญคือเตรียมฮาร์ดแวร์และซอฟต์แวร์ให้พร้อม คุณสามารถใช้ NAS ที่รองรับ Docker หรือคอมพิวเตอร์เก่าที่ลง Linux, Windows หรือ macOS ก็ได้ แหล่งข้อมูลหนึ่งสรุปว่า "ขั้นแรกต้องติดตั้ง Docker Desktop ก่อน" เพราะแพลตฟอร์มจัดการภาพแบบโฮสต์เองบางตัวทำงานผ่าน Docker ที่แยกส่วนประกอบออกเป็นคอนเทนเนอร์ต่างๆ.

บน Windows แนะนำให้ใช้ Docker Desktop ซึ่งรองรับ WSL2 ขณะที่ Linux ใช้ Docker Engine ร่วมกับปลั๊กอิน Docker Compose ส่วน macOS ใช้ Docker Desktop เหมือนกัน. เมื่อ Docker พร้อมแล้ว คุณจะใช้ Terminal ของระบบปฏิบัติการ (Mac Terminal, Linux Terminal หรือ Windows Terminal / PowerShell) เป็นตัวออกคำสั่งเกือบทั้งหมด.

นอกจากเครื่องหลักที่ทำหน้าที่เป็น NAS หรือเซิร์ฟเวอร์หลักแล้ว การมีเครื่องสำรองอีกหนึ่งเครื่องช่วยลดความเสี่ยง ถ้าดิสก์เสียหรืออัปเดตผิดพลาด ข้อมูลจะไม่หายไปพร้อมกันทั้งหมด มีตัวอย่างจากผู้ใช้ที่นำโทรศัพท์รุ่นเก่ามาเป็นเครื่องสำรอง โดยเซ็ตให้เซิร์ฟเวอร์หลัก rsync ข้อมูลไปเก็บบนโทรศัพท์ผ่าน SSH ตามเวลาที่กำหนด ทำให้โทรศัพท์เป็นสำเนาสำรองของข้อมูลที่โฮสต์บนเครื่องหลัก.

สร้างเซิร์ฟเวอร์ภาพถ่ายส่วนตัวบน NAS ด้วย Docker

ขั้นตอนติดตั้ง Docker เพื่อเก็บภาพบนเซิร์ฟเวอร์ส่วนตัว

หัวใจของเซิร์ฟเวอร์ภาพถ่ายส่วนตัวในบทความนี้คือการใช้ Docker เก็บภาพในคอนเทนเนอร์ที่จัดการง่าย ย้ายง่าย และไม่ผูกติดกับระบบปฏิบัติการโดยตรง การใช้ Docker ยังช่วยให้เราเปลี่ยนหรือลองแพลตฟอร์มจัดการภาพหลายแบบได้โดยไม่ทำให้โฟลเดอร์ภาพดิบเดิมยุ่งเหยิง จุดที่ต้องใส่ใจคือการกำหนดตำแหน่งเก็บไฟล์และฐานข้อมูลให้ถูกตั้งแต่แรก เพื่อให้สำรองข้อมูลออกไปยังดิสก์อื่นหรือนำไปใช้กับเซิร์ฟเวอร์ใหม่ได้สะดวก.

  1. ติดตั้ง Docker: บน Windows และ macOS ให้ติดตั้ง Docker Desktop ส่วน Linux ให้ติดตั้ง Docker Engine และปลั๊กอิน Docker Compose ตามคู่มือของแต่ละดิสโทร เมื่อเปิด Docker แล้วไม่จำเป็นต้องใช้หน้าจอกราฟิกมากนัก เพราะเราจะใช้ Terminal เป็นหลัก.
  2. สร้างโฟลเดอร์โปรเจ็กต์บนเซิร์ฟเวอร์: เปิด Terminal แล้วรันคำสั่ง mkdir ~/immich-app cd ~/immich-app คำสั่งแรกสร้างโฟลเดอร์ immich-app ในโฮมไดเรกทอรี ส่วนคำสั่งที่สองเปลี่ยนตำแหน่งมาทำงานในโฟลเดอร์นี้ เพื่อให้ทุกไฟล์ที่เกี่ยวกับเซิร์ฟเวอร์ภาพถูกจัดเก็บอยู่รวมกัน.
  3. ดาวน์โหลดไฟล์ตั้งค่า Docker: ในโฟลเดอร์โปรเจ็กต์ รันคำสั่ง 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 ไฟล์ docker-compose.yml ระบุว่าต้องสร้างคอนเทนเนอร์ใดบ้างและตั้งค่าอย่างไร ส่วนไฟล์ .env เก็บค่าพารามิเตอร์ที่บอกตำแหน่งเก็บภาพและฐานข้อมูล.
  4. แก้ไขไฟล์ .env เพื่อกำหนดตำแหน่งเก็บภาพ: เปิดไฟล์ .env ในโปรแกรมแก้ไขข้อความ แล้วมองหาบรรทัด UPLOAD_LOCATION=./library DB_DATA_LOCATION=./postgres ตัวแปร UPLOAD_LOCATION ระบุตำแหน่งที่คอนเทนเนอร์จะเก็บไฟล์ภาพและสื่ออื่น ส่วน DB_DATA_LOCATION ระบุตำแหน่งเก็บฐานข้อมูล PostgreSQL โดยมีคำแนะนำให้เก็บฐานข้อมูลไว้บนสตอเรจโลคอล ไม่ใช่โฟลเดอร์แชร์บนเน็ตเวิร์ก.
  5. เริ่มต้นเซิร์ฟเวอร์ด้วย Docker: หลังบันทึกไฟล์ .env กลับมาที่ Terminal และตรวจสอบให้แน่ใจว่ายังอยู่ในโฟลเดอร์ immich-app จากนั้นรัน docker compose up -d คำสั่งนี้จะให้ Docker อ่านไฟล์ docker-compose.yml ดาวน์โหลดอิมเมจที่ต้องใช้ และสร้างคอนเทนเนอร์ตามที่ระบุ เมื่อเสร็จแล้วคุณจะได้เซิร์ฟเวอร์ภาพถ่ายส่วนตัวบนเครื่องเก่าหรือ NAS ที่ใช้ Docker ได้ทันที.

เมื่อขั้นตอนทั้งหมดสำเร็จ รูปภาพที่อัปโหลดผ่านแพลตฟอร์มที่รันใน Docker จะไม่ได้ไปอยู่บนเซิร์ฟเวอร์ของผู้ให้บริการคลาวด์อีกต่อไป แต่ถูกเก็บไว้ในตำแหน่งที่เรากำหนดเองตั้งแต่ขั้นตอนแก้ไขไฟล์ .env ทำให้เรามีอำนาจควบคุมพื้นที่เก็บข้อมูลเต็มที่และสามารถย้ายข้อมูลออกไปยังดิสก์สำรองหรือนำไปใช้บนเครื่องใหม่ได้ง่ายเมื่อถึงเวลาอัปเกรด.

เชื่อมมือถือและเครื่องสำรอง: สำรองอัตโนมัติแบบไม่พึ่งคลาวด์

ได้เซิร์ฟเวอร์ภาพถ่ายส่วนตัวแล้ว ขั้นต่อไปคือทำให้การสำรองรูปจากมือถือและการมีสำเนาอีกชุดเป็นเรื่องอัตโนมัติและไม่ต้องจ่ายค่าสมาชิกคลาวด์เพิ่ม เป้าหมายคือให้รูปจากมือถือไหลเข้าสู่ NAS หรือคอมเก่าของเรา แล้วจากนั้นจึงถูกคัดลอกต่อไปยังเครื่องสำรองอีกตัวหนึ่งตามตารางเวลา ความท้าทายจริงคือการจัดการสิทธิ์เข้าถึงไฟล์และตั้งเวลาให้เครื่องแต่ละตัวทำงานแบบที่ไม่รบกวนการใช้งานประจำวัน.

สำหรับเครื่องสำรอง แหล่งข้อมูลหนึ่งใช้โทรศัพท์ Android เครื่องเก่าติดตั้งแอป Termux จาก F-Droid หรือ GitHub จากนั้นรันคำสั่ง pkg update && pkg upgrade และ pkg install openssh เพื่อติดตั้ง SSH server แล้วสั่ง termux-setup-storage เพื่อให้เซิร์ฟเวอร์มองเห็นพื้นที่จัดเก็บไฟล์ของโทรศัพท์ จากนั้นจึงตั้งค่าให้ sshd เปิดบนพอร์ต 8022. เมื่อมี SSH แล้ว เซิร์ฟเวอร์หลักสามารถรัน cron job เพื่อ rsync รูปภาพจาก NAS ไปยังโทรศัพท์ตามเวลาที่กำหนด ทำให้โทรศัพท์กลายเป็นสำเนาสำรองอีกชุดหนึ่งโดยไม่ต้องจ่ายค่าบริการเก็บข้อมูลภายนอก.

ฝั่งมือถือที่ใช้ถ่ายรูปเป็นประจำ คุณสามารถติดตั้งแอปของแพลตฟอร์มภาพที่รันใน Docker (เช่นแอปที่รองรับการอัปโหลดอัตโนมัติ) แล้วตั้งค่าอัปโหลดรูปใหม่ขึ้นเซิร์ฟเวอร์ทันทีเมื่อเชื่อมต่อ Wi‑Fi จากนั้นปล่อยให้ระบบ rsync ไปยังเครื่องสำรองตามรอบเวลา วิธีนี้ช่วยให้คุณได้ทั้งสำเนาบน NAS และสำเนาบนเครื่องสำรอง โดยโครงสร้างทั้งหมดไม่มีส่วนใดพึ่งผู้ให้บริการคลาวด์แบบสมัครสมาชิกเลย.

ข้อควรรู้ก่อนใช้งานยาวๆ และสรุปว่าคุ้มไหม

เมื่อใช้เซิร์ฟเวอร์ภาพถ่ายส่วนตัวไปสักพัก คุณจะเริ่มเห็นทั้งข้อดีและข้อควรระวัง ด้านดีคือเราควบคุมตำแหน่งเก็บข้อมูลเองตั้งแต่ระดับโฟลเดอร์บนดิสก์ ไม่ต้องพึ่งสัญญาหรือเงื่อนไขของผู้ให้บริการ และลดความจำเป็นต้องใช้คลาวด์แบบสมัครสมาชิกระยะยาว แต่ในอีกด้านหนึ่ง เราต้องรับผิดชอบเรื่องความปลอดภัย การอัปเดตซอฟต์แวร์ และการวางแผนสำรองข้อมูลเองทั้งหมด.

จุดที่หลายคนมองข้ามคือการมีเครื่องเดียวหมายถึงมีสำเนาเดียว หากดิสก์เสียหรืออัปเดตผิดพลาด ข้อมูลทั้งหมดอาจหายไปพร้อมกัน ผู้ใช้คนหนึ่งจึงเลือกเพิ่มเครื่องที่สองให้เป็นจุดล้มเหลวอีกจุดหนึ่ง แล้วใช้ rsync ผ่าน SSH จากเครื่องหลักไปยังเครื่องสำรองตามเวลาที่ตั้งไว้ ทำให้ถ้าฮาร์ดแวร์ตัวหนึ่งเสียหาย ยังมีข้อมูลอยู่บนอีกเครื่องหนึ่ง.

โดยรวมแล้ว การแปลง NAS หรือคอมเก่าให้เป็นเซิร์ฟเวอร์ภาพถ่ายส่วนตัวผ่าน Docker คือการแลกความสะดวกแบบสำเร็จรูปของคลาวด์กับอิสระและการควบคุมเต็มมือ ถ้าคุณโอเคกับการดูแลระบบเองเล็กน้อย แลกกับการรู้แน่ชัดว่าทุกภาพสำคัญเก็บอยู่ในดิสก์ของคุณเอง ระบบนี้ถือว่าคุ้มและยืดหยุ่นในระยะยาว โดยเฉพาะเมื่อผูกเข้ากับอุปกรณ์สำรองที่คุณมีอยู่แล้วในบ้าน.

ZestBuy ได้รับค่าคอมมิชชั่นเมื่อคุณช้อปผ่านลิงก์ของเรา โดยคุณไม่ต้องจ่ายเพิ่ม

You May Also Like

Comments
พูดอะไรบางอย่าง...
ยังไม่มีความคิดเห็น มาเป็นคนแรกที่แบ่งปันความคิดเห็นของคุณ!