Self-hosted Dashboard: Quản lý NAS, Media Server, Smart Home

P P T P Chung

Self-hosted dashboard: “bảng điều khiển trung tâm” cho NAS, media server, smart home

Bạn có NAS chứa dữ liệu, Plex/Jellyfin phát phim, Home Assistant điều khiển nhà thông minh, vài container Docker, Pi-hole chặn quảng cáo, qBittorrent tải file, camera NVR, router, UPS… Nhưng mỗi dịch vụ một URL, một cổng, một giao diện. Kết quả: bookmark lộn xộn, khó nhớ IP, khó biết dịch vụ nào đang sống/chết.

Self-hosted dashboard giải quyết đúng bài toán đó: gom toàn bộ hệ sinh thái homelab vào một trang duy nhất. Mở trình duyệt → thấy NAS, media, smart home, monitoring, link nhanh, trạng thái dịch vụ, tài nguyên máy chủ, thông báo lỗi. Nói ngắn: một cửa → quản trị toàn nhà.

Self-hosted dashboard là gì?

Self-hosted dashboard là ứng dụng web chạy trên hạ tầng của bạn: NAS, mini PC, Raspberry Pi, server Docker, VM. Nó hiển thị link, widget, trạng thái, metrics, API từ các dịch vụ nội bộ.

Các dashboard phổ biến:

Homepage: mạnh, đẹp, nhiều widget, YAML config. – Homer: nhẹ, đơn giản, static. – Heimdall: dễ dùng, có app tile. – Dashy: nhiều tùy biến, phù hợp dashboard lớn. – Organizr: mạnh cho media stack. – Homarr: hiện đại, thân thiện, hợp Docker/homelab.

Nếu mới bắt đầu: Homepage hoặc Homarr. Nếu muốn nhẹ: Homer.

Vì sao nên dùng dashboard cho NAS/media/smart home?

1. Truy cập nhanh, ít nhầm URL

Thay vì nhớ:

http://192.168.1.10:5000 → NAS – http://192.168.1.20:8096 → Jellyfin – http://192.168.1.30:8123 → Home Assistant – http://192.168.1.40:8080 → qBittorrent

Bạn chỉ cần:

https://home.local – hoặc https://dash.yourdomain.com

Dashboard → link phân nhóm → click là vào.

2. Quan sát trạng thái hệ thống

Dashboard tốt không chỉ là bookmark. Nó có thể hiển thị:

– CPU/RAM/disk của server. – Dung lượng NAS. – Trạng thái Docker container. – Dịch vụ up/down. – Stream đang chạy trong Plex/Jellyfin. – Tốc độ tải qBittorrent. – Trạng thái Pi-hole. – Thiết bị smart home. – Nhiệt độ, pin, cảnh báo.

Bạn nhìn một trang → biết “nhà số” có ổn không.

3. Giảm phụ thuộc cloud

Tự host dashboard → dữ liệu, link nội bộ, API token nằm trong hệ thống của bạn. Không cần đưa sơ đồ nhà, IP, tên dịch vụ lên nền tảng lạ. Với smart home/NAS, đây là lợi thế lớn.

4. Dễ mở rộng

Hôm nay có NAS + Jellyfin. Mai thêm Frigate camera, AdGuard Home, Uptime Kuma, Grafana, Vaultwarden. Dashboard chỉ cần thêm tile/widget. Không phải thay đổi workflow.

Kiến trúc khuyến nghị

Một mô hình gọn:

NAS: lưu trữ, backup, file share. – Mini PC/Raspberry Pi: chạy Docker apps. – Reverse proxy: Nginx Proxy Manager, Traefik, Caddy. – Dashboard: Homepage/Homarr. – DNS nội bộ: Pi-hole/AdGuard Home/router. – Monitoring: Uptime Kuma + Grafana/Prometheus tùy nhu cầu. – VPN: WireGuard/Tailscale để truy cập từ xa.

Luồng:

user → https://home.local → reverse proxy → dashboard → các dịch vụ nội bộ

Không nên mở tất cả cổng ra Internet. Nên truy cập từ xa qua VPN.

Chọn dashboard nào?

Homepage

Hợp với: người thích config rõ, homelab nghiêm túc, nhiều widget.

Ưu điểm:

– Giao diện sạch. – Widget phong phú: Docker, Plex, Jellyfin, Sonarr, Radarr, qBittorrent, Pi-hole, Home Assistant… – Config bằng YAML → dễ backup/version control. – Chạy nhẹ.

Nhược:

– Cần sửa file YAML. – Sai indent → lỗi.

Homarr

Hợp với: người muốn kéo-thả, cấu hình qua UI.

Ưu điểm:

– UI đẹp. – Dễ thêm app. – Có integration. – Thân thiện người mới.

Nhược:

– Ít “infrastructure-as-code” hơn Homepage. – Một số tùy biến sâu kém linh hoạt.

Heimdall/Homer

Hợp với: dashboard link nhanh, ít widget.

Ưu:

– Nhẹ. – Dễ chạy. – Ít bảo trì.

Nhược:

– Không mạnh bằng Homepage/Homarr nếu muốn nhiều metrics.

Triển khai nhanh bằng Docker

Ví dụ với Homepage:

services:
  homepage:
    image: ghcr.io/gethomepage/homepage:latest
    container_name: homepage
    ports:
      - "3000:3000"
    volumes:
      - ./config:/app/config
      - /var/run/docker.sock:/var/run/docker.sock:ro
    restart: unless-stopped

Chạy:

docker compose up -d

Truy cập:

http://SERVER_IP:3000

Sau đó cấu hình reverse proxy:

https://home.local → http://homepage:3000

Nếu dùng Docker socket, chỉ mount read-only. Tốt hơn nữa: dùng Docker socket proxy để giảm rủi ro.

Cách tổ chức dashboard hiệu quả

Nhóm theo chức năng

Đừng ném mọi thứ vào một trang hỗn loạn. Nên chia nhóm:

NAS & Storage

– Synology/QNAP/TrueNAS – SMB/NFS docs – Snapshot/backup – File Browser

Media Server

– Jellyfin/Plex/Emby – Sonarr/Radarr – Bazarr – Overseerr/Jellyseerr – qBittorrent/SABnzbd

Smart Home

– Home Assistant – Zigbee2MQTT – Mosquitto MQTT – ESPHome – Frigate/NVR

Network

– Router – Pi-hole/AdGuard Home – Nginx Proxy Manager – WireGuard/Tailscale – Switch/AP controller

Monitoring

– Uptime Kuma – Grafana – Prometheus – Netdata – Scrutiny/S.M.A.R.T disk

Admin

– Portainer – Proxmox – TrueNAS – Vaultwarden – Gitea

Ưu tiên theo tần suất dùng

Dịch vụ dùng mỗi ngày → trên cùng:

– Home Assistant – Jellyfin/Plex – NAS file – qBittorrent – Pi-hole – Uptime Kuma

Dịch vụ ít dùng → nhóm admin phía dưới.

Dùng icon, màu, mô tả ngắn

Tile tốt nên có:

– Tên rõ: “Jellyfin”, không phải “Media”. – Mô tả: “Phim/nhạc nội bộ”. – Icon đúng. – URL nội bộ hoặc reverse proxy. – Trạng thái healthcheck nếu có.

Widget nên có cho NAS

NAS là lõi dữ liệu. Dashboard nên hiển thị:

– Dung lượng volume. – Trạng thái ổ đĩa. – S.M.A.R.T warning. – Snapshot gần nhất. – Backup gần nhất. – Nhiệt độ ổ. – Tình trạng UPS.

Công cụ hữu ích:

Scrutiny: theo dõi S.M.A.R.T. – Uptime Kuma: check NAS web/SMB. – Grafana + Prometheus node exporter: metrics sâu. – Synology/QNAP/TrueNAS widget nếu dashboard hỗ trợ.

Mẹo: tạo tile “Backup status” riêng. Backup hỏng thường chỉ bị phát hiện khi cần restore. Lúc đó quá muộn.

Widget nên có cho media server

Media stack thường nhiều dịch vụ. Dashboard giúp tránh “mù trạng thái”.

Nên hiển thị:

– Jellyfin/Plex: người đang xem, stream active. – Sonarr/Radarr: lịch tải, lỗi indexer. – qBittorrent: tốc độ down/up, số torrent. – Overseerr/Jellyseerr: yêu cầu mới. – Bazarr: subtitle missing.

Luồng quản lý đẹp:

Overseerr → Radarr/Sonarr → qBittorrent → Jellyfin/Plex

Dashboard nên xếp theo đúng luồng đó. Khi phim chưa hiện → nhìn từ trái sang phải → biết kẹt ở đâu.

Widget nên có cho smart home

Smart home cần phản ứng nhanh. Dashboard không thay Home Assistant, nhưng là cổng vào tiện.

Nên có:

– Home Assistant. – Zigbee2MQTT. – MQTT broker. – ESPHome. – Frigate camera. – Router/AP. – Pin cảm biến. – Trạng thái automations quan trọng.

Nếu dashboard hỗ trợ Home Assistant API, có thể hiển thị:

– Đèn đang bật. – Nhiệt độ phòng. – Cửa mở/đóng. – Báo động. – Camera snapshot. – Trạng thái người ở nhà.

Lưu ý: không để dashboard public nếu có camera, khóa cửa, alarm. Chỉ VPN hoặc auth mạnh.

Bảo mật: phần không được xem nhẹ

Dashboard là bản đồ hạ tầng. Ai vào được dashboard → biết bạn chạy gì, ở đâu, cổng nào. Vì vậy:

Không expose trực tiếp ra Internet nếu không cần. – Dùng VPN: WireGuard, Tailscale, ZeroTier. – Nếu public: bật SSO/auth qua Authelia, Authentik, Cloudflare Access. – Dùng HTTPS. – Không hardcode API token vào repo public. – Phân quyền read-only cho widget. – Hạn chế Docker socket. – Backup config. – Update image định kỳ. – Dùng firewall chặn truy cập lạ.

Mô hình an toàn:

Internet → VPN/auth → reverse proxy → dashboard → LAN services

Không an toàn:

Internet → dashboard mở → link nội bộ + token lộ

DNS nội bộ: chi tiết nhỏ, lợi ích lớn

Thay vì IP/cổng, dùng tên dễ nhớ:

nas.homejellyfin.homeha.homerouter.homedash.home

Có thể cấu hình bằng:

– Pi-hole Local DNS. – AdGuard Home DNS rewrites. – Router DNS. – /etc/hosts cho thử nghiệm nhỏ.

Kết hợp reverse proxy, bạn có URL đẹp:

https://jellyfin.home
https://ha.home
https://nas.home
https://dash.home

Dashboard lúc này gọn, dễ dùng trên điện thoại, TV, tablet.

Mẫu bố cục thực tế

Một dashboard gia đình/homelab nên có 3 tầng:

Tầng 1: Dùng hằng ngày

– Home Assistant – Jellyfin/Plex – NAS files – Camera – qBittorrent – Pi-hole

Tầng 2: Theo dõi

– Uptime Kuma – Grafana – Scrutiny – UPS – Internet speedtest – Docker status

Tầng 3: Quản trị

– Portainer – Proxmox – Nginx Proxy Manager – Router – Switch/AP controller – Vaultwarden – Backup tool

Nguyên tắc: người nhà dùng được tầng 1, admin dùng tầng 2-3.

Kết luận: dashboard không chỉ để đẹp

Self-hosted dashboard không phải món trang trí homelab. Nó là lớp điều phối giúp bạn quản lý NAS, media server, smart home rõ ràng hơn, nhanh hơn, an toàn hơn. Giá trị lớn nhất không nằm ở icon đẹp, mà ở khả năng trả lời nhanh: dịch vụ nào đang lỗi, dữ liệu còn đủ chỗ không, backup chạy chưa, media pipeline kẹt ở đâu, smart home có ổn không.

Nếu mới bắt đầu, hãy chạy Homepage hoặc Homarr bằng Docker, thêm 5 dịch vụ quan trọng nhất, cấu hình DNS nội bộ, đặt sau reverse proxy, truy cập từ xa qua VPN. Sau đó mở rộng dần: monitoring, backup status, S.M.A.R.T disk, media widgets, Home Assistant.

Làm đúng → một trang dashboard nhỏ biến cả hệ sinh thái số trong nhà thành hệ thống dễ quản trị, dễ kiểm soát, dễ sống chung.

Tác giả

P T P

Chia sẻ

Bài viết liên quan

Bình luận (0)

Email của bạn sẽ không được hiển thị công khai.

Chưa có bình luận. Hãy là người đầu tiên!