บอกลาคำสั่ง Docker CLI ที่ซับซ้อน: คู่มือติดตั้ง Dockge จัดการ Docker Compose บน Home Server อย่างมือโปร

ยกระดับการจัดการคอนเทนเนอร์บน Home Server ให้ง่ายและเป็นระเบียบ ด้วย Dockge ตัวจัดการ Docker Compose สไตล์มินิมอลที่เน้นความโปร่งใส ควบคุมไฟล์ .yml ได้โดยตรง 100%

Share
บอกลาคำสั่ง Docker CLI ที่ซับซ้อน: คู่มือติดตั้ง Dockge จัดการ Docker Compose บน Home Server อย่างมือโปร

สำหรับผู้ที่เริ่มต้นสร้าง Home Server เพื่อทวงคืนอธิปไตยเหนือข้อมูลส่วนตัว สิ่งหนึ่งที่เราต้องทำความคุ้นเคยอย่างหลีกเลี่ยงไม่ได้คือ Docker และ Docker Compose ไม่ว่าจะเป็นการติดตั้ง Vaultwarden, Nextcloud, Immich หรือ n8n

แต่เมื่อจำนวนบริการในบ้านเริ่มเพิ่มขึ้นจาก 2-3 ตัวกลายเป็น 10-20 ตัว ปัญหาคลาสสิกที่มักจะเกิดขึ้นคือ: * ต้องคอยจำคำสั่ง Terminal ยาวๆ เช่น docker compose up -d, docker compose logs -f * ไฟล์ docker-compose.yml กระจัดกระจายอยู่ตามโฟลเดอร์ต่างๆ จนจำไม่ได้ว่าเซอร์วิสไหนตั้งค่าอะไรไว้ * การใช้เครื่องมือรุ่นพี่อย่าง Portainer บางครั้งก็รู้สึกว่า "หนักเกินไป" และมีเลเยอร์การตั้งค่าที่ซับซ้อนเกินจำเป็น ซ้ำยังชอบซ่อนไฟล์ Compose ไว้ในฐานข้อมูลภายในจนเราจัดการไฟล์ดิบได้ยาก

หากคุณกำลังมองหาเครื่องมือจัดการ Docker ที่ เร็ว เบา คลีน และตรงไปตรงมา คำตอบที่สมบูรณ์แบบที่สุดในตอนนี้คือ Dockge ครับ


ทำไมต้องเลือก Dockge?

Dockge (อ่านว่า ด็อก-เจ) เป็นโปรเจกต์โอเพนซอร์สที่พัฒนาโดย Louis Lam ผู้สร้างเครื่องมือมอนิเตอร์ชื่อดังอย่าง Uptime Kuma ที่ชาว Self-host ชื่นชอบ

จุดเด่นของ Dockge ที่เหนือกว่าเครื่องมือตัวจัดการคอนเทนเนอร์แบบเดิมๆ ได้แก่:

  1. ยึดไฟล์ docker-compose.yml เป็นศูนย์กลาง (Directory-based): ทุก Stack ที่คุณสร้างใน Dockge จะถูกบันทึกเป็นไฟล์ .yml และโฟลเดอร์ข้อมูลจริงบนฮาร์ดดิสก์ของคุณ ไม่มีการซ่อนไว้ในฐานข้อมูลปิด ทำให้คุณสามารถแก้ไขไฟล์ผ่าน VS Code, Terminal หรือ Dockge UI ได้พร้อมกันแบบไร้รอยต่อ
  2. หน้าตาเว็บแบบ Reactive และทันสมัย: หน้าจอ UI ตอบสนองแบบเรียลไทม์ผ่าน WebSocket ไม่ต้องคอยกดรีเฟรชหน้าเว็บเพื่อดูสถานะการดาวน์โหลดอิมเมจหรือการสตาร์ตคอนเทนเนอร์
  3. Interactive Terminal และ Log Viewer ในตัว: คุณสามารถดูบันทึกการทำงาน (Logs) แบบสดๆ หรือเปิด Terminal สั่งการเข้าไปในคอนเทนเนอร์ผ่านเว็บเบราว์เซอร์ได้ทันทีโดยไม่ต้องเปิด SSH ซ้ำซ้อน
  4. น้ำหนักเบามาก: ใช้ทรัพยากรเครื่องน้อยมาก เหมาะอย่างยิ่งสำหรับ Home Server สเปกประหยัดหรือ Mini PC

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

  1. Home Server หรือ Mini PC ที่ติดตั้ง Linux (เช่น Ubuntu Server, Debian) และติดตั้ง Docker Engine + Docker Compose V2 เรียบร้อยแล้ว
  2. โฟลเดอร์หลักสำหรับเก็บ Stacks ทั้งหมดของเซิร์ฟเวอร์ เช่น /home/linn/stacks

ขั้นตอนที่ 1: เตรียมโครงสร้างโฟลเดอร์และไฟล์ติดตั้ง

เข้าสู่เซิร์ฟเวอร์ของคุณผ่าน Terminal หรือ SSH จากนั้นสร้างโฟลเดอร์สำหรับ Dockge และโฟลเดอร์เก็บ Stacks:

# สร้างโฟลเดอร์หลักสำหรับเก็บ Stacks ของบริการทั้งหมด
mkdir -p ~/stacks

# สร้างโฟลเดอร์สำหรับรัน Dockge เอง
mkdir -p ~/dockge
cd ~/dockge

สร้างไฟล์ docker-compose.yml ภายในโฟลเดอร์ ~/dockge:

version: "3.8"

services:
  dockge:
    image: louislam/dockge:1
    container_name: dockge
    restart: unless-stopped
    ports:
      - "5001:5001"
    volumes:
      # เชื่อมต่อ Docker Socket เพื่อให้ Dockge คุมคอนเทนเนอร์ได้
      - /var/run/docker.sock:/var/run/docker.sock
      # โฟลเดอร์เก็บข้อมูลคอนฟิกของ Dockge
      - ./data:/app/data
      # โฟลเดอร์หลักที่ใช้เก็บ Stacks ทั้งหมดบนเซิร์ฟเวอร์
      - /home/linn/stacks:/home/linn/stacks
    environment:
      - DOCKGE_STACKS_DIR=/home/linn/stacks
ข้อควรระวัง: ตรวจสอบให้แน่ใจว่าพาธ /home/linn/stacks ในส่วน volumes และ DOCKGE_STACKS_DIR ตรงกับชื่อโฟลเดอร์และชื่อผู้ใช้จริงบนเซิร์ฟเวอร์ของคุณ

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

สั่งให้ Docker Compose ดาวน์โหลดอิมเมจและรัน Dockge ในเบื้องหลัง:

docker compose up -d

เมื่อระบบเริ่มทำงานเรียบร้อย: 1. เปิดเว็บเบราว์เซอร์บนคอมพิวเตอร์ของคุณแล้วไปที่ http://<IP_ของ_Home_Server>:5001 2. ระบบจะแสดงหน้าจอแรกเพื่อสร้าง บัญชีผู้ดูแลระบบ (Admin Account) 3. กรอก Username และ Password ที่ปลอดภัย แล้วกด Create

คุณจะเข้าสู่หน้า Dashboard หลักของ Dockge ที่สะอาดตา พร้อมใช้งานได้ทันที


ขั้นตอนที่ 3: วิธีสร้าง Stack บริการใหม่ผ่าน Dockge UI

เมื่อต้องการติดตั้งบริการใหม่ (เช่น Uptime Kuma หรือ Vaultwarden) คุณไม่ต้องต่อ SSH เข้าเซิร์ฟเวอร์อีกต่อไป:

  1. กดปุ่ม + Compose ที่มุมบนซ้ายของหน้าจอ Dockge
  2. ตั้งชื่อ Stack (เช่น uptime-kuma)
  3. ในช่องแก้ไขทางขวามือ คุณสามารถพิมพ์หรือวางโค้ด Docker Compose ได้ทันที:
version: "3.8"
services:
  uptime-kuma:
    image: louislam/uptime-kuma:1
    container_name: uptime-kuma
    restart: always
    ports:
      - "3001:3001"
    volumes:
      - ./uptime-kuma-data:/app/data
  1. ในช่องซ้ายมือ Dockge จะแปลงโครงสร้าง YAML ออกมาเป็น UI Form ให้คุณปรับเปลี่ยนพอร์ตหรือตัวแปร Environment ได้ง่ายๆ
  2. กดปุ่ม Deploy ระบบจะทำการดึง Image และรันคอนเทนเนอร์พร้อมแสดงสถานะให้เห็นแบบสดๆ

ขั้นตอนที่ 4: การนำเข้า (Import) Stacks เดิมที่มีอยู่แล้ว

หากคุณมีโฟลเดอร์ Docker Compose ที่เคยสร้างไว้ก่อนหน้านี้ เพียงแค่ย้ายโฟลเดอร์โปรเจกต์เหล่านั้นมาไว้ในไดเรกทอรี ~/stacks:

# ตัวอย่าง: ย้ายโฟลเดอร์ vaultwarden มาไว้ใน stacks directory
mv ~/vaultwarden ~/stacks/vaultwarden

จากนั้นเปิดหน้าต่าง Dockge แล้วกดปุ่ม Scan Stacks Folder บริการเดิมของคุณทั้งหมดจะปรากฏขึ้นในแถบด้านซ้ายมือโดยอัตโนมัติ พร้อมให้คุณกด Start, Stop, Update หรือแก้ไขคอนฟิกได้ทันที


ข้อแนะนำเพิ่มเติมเพื่อความปลอดภัย

  • เข้าถึงผ่านเครือข่ายส่วนตัว: ไม่ควรเปิดพอร์ต 5001 ออกสู่อินเทอร์เน็ตสาธารณะโดยตรง ควรเข้าใช้งานผ่านเครือข่ายภายในบ้าน (LAN) หรือผ่าน VPN ส่วนตัวอย่าง Tailscale
  • สำรองข้อมูลไดเรกทอรี ~/stacks: เนื่องจากการตั้งค่าบริการทั้งหมดอยู่ในรูปไฟล์ .yml ภายในโฟลเดอร์นี้ คุณสามารถใช้เครื่องมืออย่าง Restic หรือ Git สำรองข้อมูลโฟลเดอร์ stacks ได้ง่ายและกู้คืนได้ทันทีหากฮาร์ดดิสก์มีปัญหา

บทสรุป

การทำ Self-Hosting ไม่จำเป็นต้องทนกับความยุ่งยากของ Command-line เสมอไป การมีเครื่องมืออย่าง Dockge ประจำการอยู่บน Home Server จะช่วยเปลี่ยนกระบวนการดูแลระบบให้กลายเป็นเรื่องสนุก รวดเร็ว และเป็นระเบียบ

ที่สำคัญที่สุด คุณยังคงเป็น เจ้าของข้อมูลและการตั้งค่าทั้งหมด 100% ผ่านไฟล์ข้อความธรรมดาที่เปิดอ่านได้ทุกเมื่อ นี่คือหัวใจสำคัญของการสร้างโครงสร้างพื้นฐานสำหรับ Private Brain OS ที่มั่นคงและยั่งยืนครับ

Read more

สร้าง AI Agent สำหรับการทำ Decision Log อัตโนมัติ: เปลี่ยนทุกการตัดสินใจสำคัญให้เป็นบทเรียนเพื่อการเติบโต

สร้าง AI Agent สำหรับการทำ Decision Log อัตโนมัติ: เปลี่ยนทุกการตัดสินใจสำคัญให้เป็นบทเรียนเพื่อการเติบโต

เรียนรู้วิธีใช้ AI Agent ช่วยบันทึกและวิเคราะห์การตัดสินใจสำคัญในชีวิตประจำวัน เพื่อเปลี่ยนทุกทางเลือกให้กลายเป็นฐานข้อมูลบทเรียนที่มีค่าสำหรับอนาคต

By Linn
คู่มือใช้งาน Obsidian Graph View: เปลี่ยนใยแมงมุมความรู้ให้เป็นเครื่องมือนำทางความคิดใน Second Brain

คู่มือใช้งาน Obsidian Graph View: เปลี่ยนใยแมงมุมความรู้ให้เป็นเครื่องมือนำทางความคิดใน Second Brain

Graph View ใน Obsidian ไม่ใช่แค่ภาพกราฟสวยๆ ไว้ดูเล่น มาเรียนรู้วิธีปรับแต่ง Local Graph, Color Groups และฟิลเตอร์ เพื่อเปลี่ยนเครือข่ายความรู้ให้กลายเป็นเครื่องมือนำทางความคิดจริง

By Linn
สร้าง Smart Clipboard Agent: ดักจับและคัดแยกข้อความที่คัดลอกระหว่างวัน บันทึกเข้า Obsidian อัตโนมัติด้วย Python + Ollama

สร้าง Smart Clipboard Agent: ดักจับและคัดแยกข้อความที่คัดลอกระหว่างวัน บันทึกเข้า Obsidian อัตโนมัติด้วย Python + Ollama

เปลี่ยนข้อความ โค้ด ลิงก์ และไอเดียที่คุณคัดลอกระหว่างวันให้กลายเป็นบันทึกความรู้ที่มีบริบทใน Second Brain โดยอัตโนมัติ ด้วยสคริปต์ Python คอยมอนิเตอร์คลิปบอร์ดคู่กับ Local LLM บน Ollama แบบออฟไลน์ 100%

By Linn
คู่มือจัดระเบียบ Second Brain ด้วย Johnny Decimal: วางโครงสร้างโน้ตและไฟล์ดิจิทัลให้หาเจอใน 5 วินาที

คู่มือจัดระเบียบ Second Brain ด้วย Johnny Decimal: วางโครงสร้างโน้ตและไฟล์ดิจิทัลให้หาเจอใน 5 วินาที

หมดปัญหาโฟลเดอร์รกและโน้ตกระจัดกระจาย ด้วยระบบตัวเลข Johnny Decimal System ผสานพลัง Markdown ใน Obsidian ให้คลังความรู้ค้นหาง่ายและเป็นระเบียบถาวร

By Linn