• บล็อกนี้รันอยู่บน Google Pixel 5 ที่นำกลับมาใช้ใหม่
  • ใช้เครื่องมืออย่าง Termux เพื่อสร้างสภาพแวดล้อมเซิร์ฟเวอร์และเปิดใช้งานบล็อกบนอุปกรณ์พกพา
  • ใช้ชุด แผงโซลาร์เซลล์ 100W ร่วมกับ Jackery 160W power station เพื่อให้บล็อกทำงานแบบออฟกริด (off-grid) ได้อย่างสมบูรณ์
  • บล็อกใช้ Hugo เป็นพื้นฐาน และรองรับการติดตั้งแพ็กเกจ การทำงานอัตโนมัติ รวมถึงการสำรอง/จัดการไฟล์ได้อย่างสะดวกด้วย ssh, rsync, cron เป็นต้น
  • แม้จะเป็นสมาร์ตโฟน Android ก็ยังทำงานได้เสถียรและรวดเร็วเหมือนเซิร์ฟเวอร์ลินุกซ์ทั่วไป พร้อมใช้พลังงานอย่างมีประสิทธิภาพ

บทนำและแรงจูงใจ

  • บล็อกนี้ทำงานด้วย Google Pixel 5 และ พลังงานหมุนเวียน (พลังงานแสงอาทิตย์) เท่านั้น
  • ได้แรงบันดาลใจจากผู้ใช้ Mastodon จำนวนมากที่โฮสต์เว็บไซต์ด้วยฮาร์ดแวร์สร้างสรรค์อย่าง ESP32, อุปกรณ์ Android, เราเตอร์ เป็นต้น
  • ผู้เขียนเริ่มทดลองด้วยตนเองเพื่อทำให้ ฮาร์ดแวร์มือสอง กลับมามีประโยชน์ในรูปแบบใหม่ โดยคำนึงถึงการใช้พลังงานต่ำ

ฮาร์ดแวร์และสภาพแวดล้อมเครือข่าย

  • จากอุปกรณ์หลายชิ้นที่เก็บไว้ ได้เลือก Google Pixel 5 เพราะรองรับอีเธอร์เน็ตแบบต่อสายโดยตรง (USB-OTG และด็อก) และยังได้รับอัปเดตความปลอดภัยล่าสุด
  • แม้จะติด Verizon lock จึงติดตั้ง custom ROM ไม่ได้ แต่ก็ยังใช้งานในสภาพแวดล้อม Android เดิมต่อไป
  • ให้ความสำคัญกับการใช้งาน เครือข่ายอีเธอร์เน็ตแบบใช้สายจริง แทนการเชื่อมต่อแบบไร้สาย (Wi‑Fi)

บล็อกออฟกริดที่ใช้พลังงานแสงอาทิตย์

  • จ่ายไฟด้วยแผงโซลาร์เซลล์แบบ monocrystalline 100W ของ Harbor Freight Tools และ Jackery 160W power station
  • ชุดนี้ช่วยสะสมประสบการณ์ด้าน permacomputing (การประมวลผลที่ยั่งยืนถาวร) และการทดลองใช้พลังงานหมุนเวียน
  • ยืนยันความเป็นไปได้ในการรันเว็บไซต์ออฟกริดแบบแยกอิสระโดยใช้เพียงชิ้นส่วนมือสอง

การสร้างเว็บไซต์: Termux และ Hugo

  • เดิมทีพิจารณาการสร้างสภาพแวดล้อมลินุกซ์ทั่วไป แต่สุดท้ายเลือกใช้ Termux ซึ่งเป็น Android terminal emulator พร้อมระบบแพ็กเกจของตัวเอง
  • แพ็กเกจสำคัญอย่าง ssh, git, hugo มีอยู่ในคลังของ Termux มานานแล้ว
  • ติดตั้ง Hugo ลงบน Termux โดยตรง และย้ายบล็อกเดิมที่สร้างด้วย Hugo มาใช้งาน

ประสบการณ์การใช้งานจริง

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

การติดตั้งและดูแลง่าย

  • สามารถตั้งค่าเซิร์ฟเวอร์ได้อย่างรวดเร็วเพียงติดตั้ง git, screen, โปรแกรมแก้ไขข้อความ และ hugo
  • การอัปโหลดไฟล์และโพสต์ใหม่ทำได้ด้วยแพ็กเกจ dufs (static file server แบบใช้งานผ่านเบราว์เซอร์) หรือ scp
  • dufs ก็สามารถติดตั้งได้ง่ายจากคลังของ Termux เช่นกัน

รายการแพ็กเกจยูทิลิตี้พื้นฐาน

  • rsync, openssh, git, wget, curl, fish shell, cronie, termux-services, iperf3, speedtest-go, screen, helix, hugo

การทำงานอัตโนมัติของบริการและการเข้าถึงผ่าน SSH

  • ภายใน Termux สามารถสั่งรัน sshd/cronie ในระดับบริการได้ด้วย (sv-enable)
  • เมื่อตั้งค่าตามเอกสารทางการ ต้องระวังเรื่องการลงทะเบียน SSH public key, พอร์ตคงที่ (8022) และชื่อผู้ใช้ที่ระบบสร้างให้อัตโนมัติ

การทำงานอัตโนมัติของบล็อกที่ใช้ Hugo

  • จัดการคำสั่งรัน hugo serve โดยลงทะเบียนเป็น alias ของ fish shell
  • สร้างสคริปต์อัตโนมัติ (~/scripts/blog_reload.sh) เพื่อจัดการงานต่าง ๆ เช่น ปิด screen session เดิม ลบแคช และสร้าง session ใหม่
  • ลงทะเบียน cron job ผ่าน cronie (*/5 * * * * ...) เพื่อรีสตาร์ตและรีโหลดบล็อกเป็นระยะ

การสำรองข้อมูลและการจัดการข้อมูล

  • สามารถเชื่อมต่อจากระยะไกลผ่าน ssh บน Termux แล้วสำรองทั้งไดเรกทอรีด้วย rsync ได้
  • รวมถึงการทำงานอัตโนมัติผ่าน cron ร่วมกับเดสก์ท็อปและ NAS
  • ยังสำรองเพิ่มผ่าน git instance ของตนเองได้ และจะใช้ forge อื่นอย่าง Github ก็ได้อย่างอิสระ

สรุปและส่งท้าย

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

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น