Giao diện quản lý các container trong Portainer, minh họa hệ thống tự host đa ứng dụng
Máy Tính

Gotify: Server Thông Báo Tự Host Toàn Diện Cho Home Lab Của Bạn

Khi bạn mới bắt đầu khám phá thế giới tự host (self-hosting), bạn sẽ nhanh chóng nhận ra vô số tiện ích mã nguồn mở (FOSS) có khả năng thay thế các dịch vụ đám mây cao cấp. Quá nhiều lựa chọn đến mức việc tìm ra ứng dụng phù hợp nhất cho từng tác vụ cụ thể đôi khi trở nên khó khăn. Tuy nhiên, một khi đã xây dựng được “đế chế” các tiện ích tự host trên máy chủ cục bộ, bạn sẽ cần đến những dịch vụ chuyên biệt giúp duy trì và quản lý toàn bộ hệ thống ứng dụng của mình.

Gotify chính là một công cụ như vậy, nhưng không giống như những người anh em cùng phân khúc tập trung vào bảo trì như Uptime Kuma, Homarr hay Watchtower, bạn có thể phải “đào sâu” hơn một chút vào thế giới self-hosting để tìm thấy nó. Điều này khá đáng tiếc, bởi Gotify là một bổ sung tuyệt vời cho bất kỳ thiết lập home lab nào của các tín đồ công nghệ.

Giao diện quản lý các container trong Portainer, minh họa hệ thống tự host đa ứng dụngGiao diện quản lý các container trong Portainer, minh họa hệ thống tự host đa ứng dụng

Gotify là gì và cách thức hoạt động?

Đơn giản mà nói, Gotify là một server thông báo tự host có khả năng tổng hợp cảnh báo từ các ứng dụng khác và đẩy chúng đến giao diện người dùng gọn gàng của nó. Về cơ bản, Gotify hoạt động dựa trên ba thành phần chính: Máy khách (Clients), Ứng dụng (Apps)Máy chủ Gotify (Gotify Server).

Các ứng dụng là những thực thể có thể gửi tin nhắn đến máy chủ Gotify. Chúng có thể là bất kỳ dịch vụ tự host nào bạn đang chạy, thậm chí là các nền tảng ảo hóa đang vận hành chúng. Chẳng hạn, Uptime Kuma có thể là một ứng dụng gửi thông báo về tình trạng hoạt động của các dịch vụ.

Trong khi đó, máy khách là các thiết bị có thể quản lý và hiển thị thông báo do ứng dụng tạo ra, nhưng bản thân chúng không thể tạo cảnh báo. Bất kỳ thiết bị nào bạn sử dụng để tương tác với máy chủ Gotify – như điện thoại thông minh hay giao diện web – đều được tính là máy khách. Tóm lại, Gotify đóng vai trò là cầu nối trung tâm, cho phép các ứng dụng của bạn gửi thông báo và giúp bạn xem các cảnh báo đó trên thiết bị máy khách của mình.

Kiểm tra thông báo từ Uptime Kuma hiển thị trên giao diện Gotify, cho thấy sự tích hợp hiệu quảKiểm tra thông báo từ Uptime Kuma hiển thị trên giao diện Gotify, cho thấy sự tích hợp hiệu quả

Triển khai Gotify dưới dạng Container: Dễ dàng và linh hoạt

Một trong những ưu điểm lớn của các ứng dụng tự host là số lượng tùy chọn đa dạng để chạy chúng trên server của bạn, và Gotify cũng không phải là ngoại lệ.

Cài đặt Gotify với Docker/Podman

Phương pháp phổ biến nhất để triển khai Gotify là sử dụng Docker/Podman hoặc các môi trường container khác. Việc này khá đơn giản, chỉ cần mở terminal và chạy lệnh sau:

sudo docker run -p 80:80 -v /path_to_data:/app/data gotify/server

(Hoặc bạn có thể dùng Podman bằng cách bỏ sudo và thay gotify/server bằng docker.io/gotify/server).

Hãy nhớ tạo một thư mục riêng cho dữ liệu Gotify và thay thế /path_to_data bằng đường dẫn tuyệt đối đến thư mục đó. Lệnh này sẽ ánh xạ cổng 80 của container ra cổng 80 của máy chủ host và lưu trữ dữ liệu của Gotify vào thư mục bạn đã chỉ định, đảm bảo dữ liệu được duy trì ngay cả khi container bị xóa hoặc khởi động lại.

Gotify đang chạy dưới dạng container trong Docker, minh họa cách triển khai đơn giảnGotify đang chạy dưới dạng container trong Docker, minh họa cách triển khai đơn giản

Triển khai Gotify trên Proxmox VE

Nếu bạn đang sử dụng Proxmox VE, bạn có thể tận dụng kho script hỗ trợ Proxmox VE Helper-Scripts để tạo một container Gotify một cách nhanh chóng. Chỉ cần dán lệnh sau vào Proxmox Shell:

bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/gotify.sh)"

Sau đó, chọn Default Options và để script thực hiện công việc của nó.

Tuy nhiên, có một lưu ý quan trọng: chúng tôi khuyến nghị không nên host Gotify trên Proxmox home lab của bạn trừ khi bạn đang sử dụng nhiều hơn một node. Lý do là nếu máy chủ Proxmox của bạn gặp sự cố, Gotify server cũng sẽ ngoại tuyến, đồng nghĩa với việc bạn sẽ không nhận được bất kỳ cảnh báo nào về sự cố của home lab.

Giao diện cài đặt Gotify trên Proxmox thông qua script hỗ trợGiao diện cài đặt Gotify trên Proxmox thông qua script hỗ trợ

Tích hợp Gotify vào NAS (TrueNAS Scale, Unraid)

Các hệ thống NAS chuyên dụng chạy 24/7 là lựa chọn hoàn hảo để triển khai một Gotify instance. Cả TrueNAS Scale và Unraid đều hỗ trợ các template ứng dụng cho tiện ích thông báo hữu ích này. Tương tự, hầu hết các nền tảng containerization phổ biến như UmbrelOS, CasaOS, Cosmos hay Yunohost đều bao gồm template Gotify giúp bạn triển khai dịch vụ chỉ trong chớp mắt.

Dù bạn sử dụng phương pháp nào để khởi động Gotify, bạn sẽ tìm thấy một số tùy chọn trên giao diện người dùng của nó. Tab Applications là một phần quan trọng, nơi bạn sẽ quản lý các token được sử dụng để kết nối Gotify với các dịch vụ tự host khác của bạn.

Container Gotify hiển thị trên hệ thống TrueNAS Scale, sẵn sàng cho việc quản lý thông báoContainer Gotify hiển thị trên hệ thống TrueNAS Scale, sẵn sàng cho việc quản lý thông báo

Tối ưu hóa hệ thống Self-Hosted với Gotify: Các trường hợp sử dụng thực tế

Sau khi đã tìm hiểu về lý thuyết và quy trình thiết lập Gotify, hãy cùng khám phá cách Gotify được tích hợp vào một hệ thống tự host thực tế.

Gotify – Người bạn đồng hành lý tưởng của Uptime Kuma

Đối với người dùng Uptime Kuma, Gotify là ứng dụng đồng hành yêu thích, bởi Uptime Kuma cần một dịch vụ thông báo để gửi cảnh báo trong trường hợp các dịch vụ tự host trở nên không hoạt động.

Để có một thiết lập hoàn toàn tự host, Gotify có thể đóng vai trò là backend thông báo cho Uptime Kuma. Việc thiết lập cực kỳ đơn giản: bạn chỉ cần tạo một ứng dụng (application) mới trên Gotify, sau đó sao chép app tokenđịa chỉ IP của Gotify vào cấu hình của Uptime Kuma. Ngay lập tức, mọi cảnh báo từ Uptime Kuma sẽ được gửi đến Gotify và hiển thị trên các máy khách của bạn.

Thiết lập kết nối Gotify với Uptime Kuma để nhận thông báo giám sát hệ thốngThiết lập kết nối Gotify với Uptime Kuma để nhận thông báo giám sát hệ thống

Gotify tăng cường khả năng giám sát cho TrueNAS Scale và Proxmox

Với kinh nghiệm sử dụng nhiều bản phân phối NAS và nền tảng ảo hóa, chúng tôi đã chọn TrueNAS Scale cho server lưu trữ và Proxmox cho home lab. May mắn thay, cả hai nền tảng này đều kết hợp rất tốt với Gotify.

Proxmox hỗ trợ Gotify ngay từ đầu. Tuy nhiên, tùy chọn để liên kết server Gotify với Proxmox được ẩn trong menu Notifications của tab Datacenter. Tương tự như Uptime Kuma, bạn có thể liên kết dịch vụ này với Proxmox bằng cách tạo một ứng dụng mới trong Gotify và dán địa chỉ IP cùng token của nó vào phần Notification Targets.

Mặt khác, TrueNAS Scale yêu cầu một chút tinh chỉnh. Để kết nối NAS với công cụ thông báo này, bạn có thể sử dụng TrueNas Gotify Adapter (github.com/ZTube/truenas-gotify-adapter). Quá trình này liên quan đến việc triển khai một container tùy chỉnh chứa Gotify Adapter bên trong TrueNAS Scale. Tại đó, bạn sẽ cần thêm địa chỉ IP của Gotify instance cùng với app token. Sau đó, bạn có thể sử dụng Alerts Settings để liên kết container mới tạo này với instance TrueNAS Scale của mình.

Khả năng mở rộng của Gotify với nhiều ứng dụng khác

Mặc dù Gotify là một phần không thể thiếu đối với Uptime Kuma, Proxmox và TrueNAS Scale, nó còn tích hợp tốt với hàng loạt dịch vụ khác. Trên Home Assistant, bạn sẽ tìm thấy một integration để ghép nối hệ thống quản lý nhà thông minh với Gotify qua HACS. Tương tự, Jellyfin có một plugin chuyên dụng có thể đẩy bất kỳ cảnh báo và thông báo nào đến một server Gotify.

Nếu bạn đang sử dụng Papra để quản lý tài liệu, bạn có thể sử dụng webhook để cảnh báo Gotify bất cứ khi nào một tệp mới được thêm vào server. Kết hợp với sức mạnh tự động hóa của n8n, bạn thậm chí có thể sử dụng Gotify với các ứng dụng không tự host, bao gồm Slack, Monday, AWS Lambda và nhiều dịch vụ khác, mở ra khả năng nhận thông báo tập trung cho toàn bộ hệ sinh thái số của bạn.

Giao diện quản lý các client đã kết nối với Gotify serverGiao diện quản lý các client đã kết nối với Gotify server

Kết luận

Gotify không chỉ là một server thông báo đơn thuần, mà còn là một công cụ mạnh mẽ và linh hoạt giúp bạn duy trì sự kiểm soát và giám sát tối ưu cho toàn bộ hệ thống tự host của mình. Với khả năng tích hợp dễ dàng vào nhiều nền tảng và ứng dụng phổ biến như Docker, Proxmox, TrueNAS Scale và Uptime Kuma, Gotify khẳng định vị thế là một phần không thể thiếu trong bất kỳ home lab hiện đại nào. Việc nhận được thông báo kịp thời về tình trạng hoạt động của các dịch vụ không chỉ giúp bạn nhanh chóng khắc phục sự cố mà còn tối ưu hóa hiệu quả vận hành, mang lại sự an tâm cho người quản trị.

Bạn đã và đang sử dụng Gotify trong hệ thống của mình như thế nào? Hay bạn có giải pháp thông báo tự host nào khác muốn chia sẻ? Hãy để lại bình luận bên dưới để cùng congnghehot.net thảo luận và xây dựng cộng đồng tự host ngày càng lớn mạnh nhé!

Related posts

RTX 50 Series Gặp Lỗi ROPs: Nvidia Liệu Có Đánh Mất Lòng Tin Người Dùng Việt?

Administrator

4 Cách Khai Thác Sức Mạnh Card Đồ Họa Gaming Ngoài Chơi Game

Administrator

Vì sao tôi vẫn quyết tâm chuyển sang Linux thay vì chấp nhận gia hạn hỗ trợ Windows 10 miễn phí?

Administrator