Headscale-UI 使用教程
项目介绍
Headscale-UI 是一个为 Headscale 设计的静态管理界面,无需后端环境即可运行。Headscale 是一个与 Tailscale 兼容的协调服务器,用于管理分布式网络中的节点。Headscale-UI 提供了一个简单现代的 Web 界面,方便用户进行管理操作。
项目快速启动
使用 Docker 快速部署
以下是使用 Docker 快速部署 Headscale-UI 的步骤:
-
拉取 Docker 镜像
docker pull ghcr.io/gurucomputing/headscale-ui:latest
-
运行 Docker 容器
docker run -d --name headscale-ui -p 8888:80 ghcr.io/gurucomputing/headscale-ui:latest
-
访问 Headscale-UI
打开浏览器,访问
http://127.0.0.1:8888/manager/
。
使用 Caddy 进行反向代理
如果你需要通过域名访问 Headscale-UI,可以使用 Caddy 进行反向代理配置:
-
Caddy 配置文件
yourdomain.com { @ui { path_regexp (/$)|(\ ) } handle @ui { root * /www/headscale-ui try_files {path} /index.html } reverse_proxy /web* https://headscale-ui reverse_proxy * http://headscale:8080 }
-
启动 Caddy
caddy run
应用案例和最佳实践
小型部署
对于小型部署,Headscale-UI 提供了一个简单易用的界面,可以快速管理少量的节点。例如,一个小型办公室或家庭网络可以使用 Headscale-UI 来管理其设备。
跨域部署
在跨域部署中,Headscale-UI 需要与 Headscale 服务器在同一子域下运行,或者通过反向代理解决 CORS 问题。以下是一个使用 Caddy 解决 CORS 问题的示例:
yourdomain.com {
@hs-options {
host yourdomain.com
method OPTIONS
}
@hs-other {
host yourdomain.com
}
handle @hs-options {
header {
Access-Control-Allow-Origin https://yourdomain.com
Access-Control-Allow-Headers *
Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE"
}
respond 204
}
handle @hs-other {
reverse_proxy http://headscale:8080 {
header_down Access-Control-Allow-Origin https://yourdomain.com
}
}
}
典型生态项目
Headscale
Headscale 是一个与 Tailscale 兼容的协调服务器,用于管理分布式网络中的节点。它是 Headscale-UI 的核心依赖项目。
Tailscale
Tailscale 是一个基于 WireGuard 的零配置 VPN 服务,允许用户轻松创建安全的点对点网络。Headscale 和 Headscale-UI 都是为了与 Tailscale 兼容而设计的。
Caddy
Caddy 是一个强大的、可扩展的 Web 服务器,支持自动 HTTPS 和反向代理等功能。在 Headscale-UI 的部署中,Caddy 可以用来处理反向代理和 CORS 问题。
通过以上教程,您可以快速了解和部署 Headscale-UI,并结合实际应用场景进行最佳实践。