บอกลาบริการล่มโดยไม่รู้ตัว: คู่มือติดตั้ง Uptime Kuma ระบบมอนิเตอร์สถานะ Home Server ด้วย Docker

เปลี่ยน Home Server ให้มีระบบแจ้งเตือนอัจฉริยะแบบเรียลไทม์ เรียนรู้วิธีติดตั้ง Uptime Kuma ด้วย Docker เพื่อเฝ้าระวังบริการและอุปกรณ์ในบ้าน พร้อมส่งการแจ้งเตือนตรงเข้า Telegram เมื่อระบบมีปัญหา

Share
บอกลาบริการล่มโดยไม่รู้ตัว: คู่มือติดตั้ง Uptime Kuma ระบบมอนิเตอร์สถานะ Home Server ด้วย Docker

ยิ่งคุณรันบริการ Self-hosting บน Home Server ของตัวเองมากเท่าไหร่ ไม่ว่าจะเป็น Nextcloud, Vaultwarden, AdGuard Home, Paperless-ngx หรือ Local AI สแต็กอย่าง Ollama คุณก็ยิ่งประสบปัญหาคลาสสิกอย่างหนึ่ง นั่นคือ "บริการแอบดับโดยที่เราไม่รู้ตัว"

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

เพื่อเติมเต็มโครงสร้างพื้นฐานของ Private Brain OS ให้สมบูรณ์แบบและมีความเสถียรระดับมืออาชีพ เราจำเป็นต้องมีระบบเฝ้าระวัง (Monitoring System) ที่คอยตรวจเช็กสถานะการทำงานของบริการทั้งหมดตลอด 24 ชั่วโมง และซอฟต์แวร์ที่เป็นคำตอบอันดับหนึ่งในใจสาย Self-host ทั่วโลกคือ Uptime Kuma ครับ


Uptime Kuma คืออะไร?

Uptime Kuma คือซอฟต์แวร์โอเพนซอร์ส (Open-source) ประเภท Self-hosted Monitoring Tool ที่ออกแบบมาเพื่อตรวจสอบสถานะความพร้อมใช้งาน (Uptime & Availability) ของเว็บเซิร์ฟเวอร์, บริการบนพอร์ต TCP/UDP, การตอบสนองแบบ Ping ไปจนถึงสถานะของ Docker Container ในเครื่อง

จุดเด่นที่ทำให้ Uptime Kuma ได้รับความนิยมเหนือกว่าระบบมอนิเตอร์ดั้งเดิม: * หน้าตา UI สวยงามและทันสมัย: มีแดชบอร์ดที่ใช้งานง่าย แสดงกราฟ Latency (Response Time) และเปอร์เซ็นต์ Uptime ชัดเจน * รองรับการตรวจเช็กหลากหลายรูปแบบ: ตรวจสอบได้ทั้ง HTTP(s), Ping, TCP Port, DNS Record, Docker Container Status, Push Monitor และอีกมากมาย * ระบบแจ้งเตือน (Notifications) ครอบคลุม: รองรับการส่งการแจ้งเตือนหาคุณทันทีผ่านช่องทางยอดนิยมมากกว่า 90 แบบ เช่น Telegram, Discord, LINE Notify, Slack, Webhook และ Ntfy * สร้างหน้า Status Page ได้ในตัว: สามารถจัดหมวดหมู่บริการแล้วสร้างหน้าเว็บแสดงสถานะระบบ (Status Page) ทั้งแบบสาธารณะหรือส่วนตัว เพื่อนำไปแปะไว้บน Homepage แดชบอร์ดของบ้านได้ทันที * น้ำหนักเบาและประหยัดทรัพยากร: เขียนด้วย Node.js + Vue.js รันผ่าน Docker ได้อย่างรวดเร็ว กินแรมเพียงเล็กน้อย


สิ่งที่ต้องเตรียมก่อนเริ่มติดตั้ง

  1. Home Server ที่ติดตั้ง Docker และ Docker Compose พร้อมใช้งาน
  2. การเชื่อมต่อผ่าน SSH เข้าสู่เซิร์ฟเวอร์
  3. บัญชี Telegram (สำหรับตั้งค่า Bot ส่งแจ้งเตือนเข้าสมาร์ทโฟนแบบเรียลไทม์)

ขั้นตอนที่ 1: เตรียมโฟลเดอร์และเขียนไฟล์ Docker Compose

เริ่มต้นด้วยการเปิด SSH เข้าสู่ Home Server แล้วสร้างโฟลเดอร์สำหรับจัดเก็บข้อมูลของ Uptime Kuma:

# สร้างโฟลเดอร์สำหรับโครงการ Uptime Kuma
mkdir -p ~/uptime-kuma/data

# เข้าไปยังโฟลเดอร์
cd ~/uptime-kuma

สร้างไฟล์ docker-compose.yml ด้วยคำสั่ง nano docker-compose.yml จากนั้นใส่คอนฟิกรอบด้านดังต่อไปนี้:

version: '3.8'

services:
  uptime-kuma:
    image: louislam/uptime-kuma:1
    container_name: uptime-kuma
    restart: unless-stopped
    ports:
      - "3001:3001" # พอร์ตสำหรับเข้าใช้งาน Web UI
    volumes:
      - ./data:/app/data
      - /var/run/docker.sock:/var/run/docker.sock # อนุญาตให้ตรวจสอบสถานะ Docker Container ในเครื่องได้โดยตรง
[!NOTE] การแมป /var/run/docker.sock เข้าไปในคอนเทนเนอร์ จะทำให้ Uptime Kuma สามารถดึงสถานะการทำงาน (Run/Stop/Restart) ของ Container ตัวอื่น ๆ บน Home Server ได้โดยตรง โดยไม่ต้องส่งคำขอ HTTP หรือ Ping

ขั้นตอนที่ 2: รันบริการและตั้งค่าผู้ดูแลระบบครั้งแรก

เมื่อเขียนไฟล์บันทึกเรียบร้อยแล้ว ให้สั่งรันคอนเทนเนอร์ขึ้นมาด้วยคำสั่ง:

docker compose up -d

รอประมาณ 10-15 วินาที แล้วเปิดเบราว์เซอร์บนคอมพิวเตอร์หรือสมาร์ทโฟนที่อยู่ในเครือข่ายเดียวกัน ไปที่ที่อยู่:

http://<IP-ของ-Home-Server>:3001

ในหน้าแรกที่ปรากฏขึ้น ระบบจะให้คุณตั้งค่า: 1. Language: เลือกภาษาที่ต้องการ (รองรับทั้งภาษาไทยและภาษาอังกฤษ) 2. Create Admin Account: กำหนดชื่อผู้ใช้ (Username) และรหัสผ่าน (Password) สำหรับเข้าจัดการระบบ

กด Create เพื่อเข้าสู่หน้าแดชบอร์ดหลักของ Uptime Kuma


ขั้นตอนที่ 3: เพิ่มการมอนิเตอร์บริการตัวแรก (Monitor Setup)

ทดลองเพิ่มการตรวจเช็กบริการภายใน Home Server ของคุณ เช่น ตัวจัดการรหัสผ่าน Vaultwarden หรือคลาวด์ Nextcloud:

  1. คลิกปุ่ม "Add New Monitor" (เพิ่มตัวเฝ้าระวังใหม่) ที่มุมซ้ายบน
  2. เลือก Monitor Type:
  3. สำหรับหน้าเว็บทั่วไป เลือก HTTP(s)
  4. สำหรับตรวจสอบ Docker Container เลือก Docker Container
  5. สำหรับตรวจสอบการเชื่อมต่อเน็ตเวิร์ก เลือก Ping หรือ TCP Port
  6. Friendly Name: ตั้งชื่อบริการให้จำง่าย เช่น Vaultwarden Server
  7. URL: ใส่ที่อยู่บริการ เช่น http://192.168.1.100:8080 หรือ domain name ของคุณ
  8. Heartbeat Interval: กำหนดความถี่ในการตรวจเช็ก (ค่าเริ่มต้นคือทุกๆ 60 วินาที)
  9. Retries: จำนวนครั้งที่จะลองใหม่ก่อนแจ้งเตือนว่าระบบล่ม (แนะนำตั้งไว้ที่ 2 หรือ 3 เพื่อป้องกัน False Alarm จากเน็ตกระตุกชั่วคราว)
  10. กด Save ที่ด้านล่างสุด

ระบบจะเริ่มทำการ Ping/Check ทันที และแสดงเส้นกราฟเวลาตอบสนอง (Response Time) เป็นสีเขียวสวยงาม


ขั้นตอนที่ 4: ตั้งค่าระบบแจ้งเตือนทันทีผ่าน Telegram

เพื่อให้คุณรู้ตัวทันทีเมื่อบริการล่ม การตั้งค่าแจ้งเตือนเข้า Telegram Bot เป็นวิธีที่สะดวกและฟรี 100%:

การสร้าง Telegram Bot:

  1. ค้นหาผู้ใช้ @BotFather ในแอปพลิเคชัน Telegram
  2. พิมพ์คำสั่ง /newbot แล้วตั้งชื่อ Bot ตามขั้นตอนที่ระบบแนะนำ
  3. เมื่อสร้างเสร็จ คุณจะได้ HTTP API Token (คีย์ยาวๆ) ให้คัดลอกเก็บไว้
  4. ค้นหาบอตชื่อ @userinfobot หรือดึง Telegram Chat ID ของคุณออกมา

การเชื่อมต่อใน Uptime Kuma:

  1. ในหน้า Uptime Kuma ไปที่เมนู Setup Notification -> Add Notification
  2. เลือก Notification Type: Telegram
  3. Friendly Name: ตั้งชื่อว่า Telegram Alert
  4. Bot Token: วาง API Token ที่ได้จาก BotFather
  5. Chat ID: ใส่รหัส Telegram Chat ID ของคุณ
  6. กดปุ่ม Test — หากตั้งค่าถูกต้อง แอป Telegram ในมือถือของคุณจะเด้งข้อความทดสอบทันที!
  7. เปิดสวิตช์ Default Enabled เพื่อให้ทุก Monitor ใช้การแจ้งเตือนช่องทางนี้อัตโนมัติ แล้วกด Save

ยามใดก็ตามที่บริการบน Home Server เกิดค้าง, พอร์ตดับ หรือระบบเน็ตเวิร์กขัดข้อง Uptime Kuma จะส่งข้อความแจ้งเตือนสีแดงพร้อมระบุสาเหตุตรงเข้า Telegram ของคุณภายในไม่กี่วินาที!


ขั้นตอนที่ 5: สร้างหน้า Status Page รวมสถานะทั้งบ้าน

คุณสามารถสร้างหน้าเว็บรวมสถานะบริการที่ดูสะอาดตา เพื่อเอาไปเปิดดูภาพรวมหรือแปะไว้บนแดชบอร์ดหลักของบ้าน:

  1. คลิกที่เมนู Status Pages ด้านบน
  2. กด Add New Status Page
  3. ตั้งชื่อแดชบอร์ด เช่น Private Brain OS Status และกำหนด URL Path เช่น /status/brain
  4. ลากบริการ (Monitors) ที่ต้องการโชว์เข้ามาจัดกลุ่ม เช่น กลุ่ม Core Infrastructure, กลุ่ม Storage & Backup, กลุ่ม AI Services
  5. กด Save คุณจะได้หน้าเว็บแสดงสถานะระบบที่ดูเป็นมืออาชีพ พร้อมอัปเดตแบบเรียลไทม์

สรุป: เฝ้าระวังระบบอย่างมั่นใจในแบบ Local-first

การทำ Self-hosting ไม่ใช่แค่เรื่องของการรันซอฟต์แวร์ให้ใช้งานได้ แต่คือการสร้างระบบที่คุณสามารถดูแลและควบคุมมันได้อย่างสมบูรณ์แบบ 100%

การติดตั้ง Uptime Kuma เพิ่มเข้าไปใน Home Server จะช่วยเปลี่ยนระบบในบ้านที่คุณต้องคอยลุ้นว่าบริการจะล่มเมื่อไหร่ ให้กลายเป็นโครงสร้างพื้นฐานดิจิทัลที่มีระบบเฝ้าระวังอัตโนมัติ ช่วยให้คุณใช้งานบริการใน Private Brain OS ได้อย่างสบายใจ ไร้กังวล และพร้อมรับมือกับทุกปัญหาล่วงหน้าได้อย่างทันท่วงทีครับ

Read more

สร้าง AI Agent สกัด Knowledge Graph จากโน้ตส่วนตัว: เปลี่ยนข้อความกระจัดกระจายให้เป็นเครือข่ายความรู้ออฟไลน์ 100% ด้วย Python

สร้าง AI Agent สกัด Knowledge Graph จากโน้ตส่วนตัว: เปลี่ยนข้อความกระจัดกระจายให้เป็นเครือข่ายความรู้ออฟไลน์ 100% ด้วย Python + Ollama

เปลี่ยนเอกสารและโน้ตข้อความร้อยแก้วให้เป็น Knowledge Graph แบบโครงสร้าง (Subject-Predicate-Object) โดยอัตโนมัติ ด้วยสคริปต์ Python ร่วมกับ Local LLM ในเครื่อง ช่วยสกัดความสัมพันธ์ระหว่างความคิด เทคโนโลยี และบุคคลอย่างเป็นระบบออฟไลน์ 100%

By Linn
บอกลา Audible: คู่มือติดตั้ง Audiobookshelf เซิร์ฟเวอร์หนังสือเสียงและ eBook ส่วนตัวบน Home Server ด้วย Docker

บอกลา Audible: คู่มือติดตั้ง Audiobookshelf เซิร์ฟเวอร์หนังสือเสียงและ eBook ส่วนตัวบน Home Server ด้วย Docker

เปลี่ยนคลังหนังสือเสียงและดิจิทัลไฟล์ของคุณให้กลายเป็นเซิร์ฟเวอร์สตรีมมิ่งส่วนตัว ด้วย Audiobookshelf บน Home Server ผ่าน Docker พร้อมวิธีซิงค์ความคืบหน้าการฟังข้ามอุปกรณ์แบบเรียลไทม์

By Linn
สร้าง AI Agent สกัดและสังเคราะห์ Book Highlights: เปลี่ยนโน้ตอ่านหนังสือเป็น Book Summary อัจฉริยะใน Obsidian ด้วย Python + O

สร้าง AI Agent สกัดและสังเคราะห์ Book Highlights: เปลี่ยนโน้ตอ่านหนังสือเป็น Book Summary อัจฉริยะใน Obsidian ด้วย Python + Ollama

เปลี่ยนไฮไลต์และโน้ตย่อยจากการอ่านหนังสือให้กลายเป็น Book Summary ที่ทรงคุณค่าด้วย AI Agent ออฟไลน์ส่วนตัวที่จะสกัด Core Key Takeaways, Actionable Insights และเชื่อมโยงเข้ากับระบบ Second Brain แบบ Local 100%

By Linn
สร้าง Private AI Router ในเครื่องตัวเอง: คู่มือตั้งค่า LiteLLM สลับโมเดลอัจฉริยะตามประเภทงานแบบออฟไลน์ 100%

สร้าง Private AI Router ในเครื่องตัวเอง: คู่มือตั้งค่า LiteLLM สลับโมเดลอัจฉริยะตามประเภทงานแบบออฟไลน์ 100%

เรียนรู้วิธีตั้งค่า LiteLLM เป็น AI Gateway และ Router ในเครื่องตัวเอง เพื่อสลับรันโมเดล Ollama อัตโนมัติ ทั้งโมเดลเน้นความเร็ว โมเดลคิดวิเคราะห์เชิงลึก และโมเดลวิเคราะห์ภาพ ปลอดภัย 100% ไม่ต้องพึ่งคลาวด์

By Linn