用 Docker 快速部署可配置的自托管家庭实验室仪表盘
Docker负责容器化运行,Dashy提供首页、监控、组件和配置能力。
方案简介
Dashy 是面向自托管场景的可定制仪表盘,定位为 homelab 的首页。通过 Docker 启动 Dashy 后,用户可以把应用、链接和主机集中到一个入口,并进一步配置状态监控、动态组件、搜索、主题、认证和多页面等能力。
这套方案适合家庭实验室、个人服务器和需要统一入口的自托管环境。Docker 负责提供一致的运行方式,Dashy 则通过用户数据目录中的 YAML 配置文件承载仪表盘内容。项目同时提供 Docker Hub 和 GHCR 镜像,并支持 amd64 与 arm64,适合不同架构的主机。
亮点与能力
- 支持多个页面,适合按用途组织不同应用。
- 为应用、链接和主机提供实时状态监控。
- 通过 widgets 展示自托管服务的信息和动态内容。
- 支持按名称、域名或标签即时搜索,并提供可定制快捷键。
- 提供内置主题、UI 颜色编辑器和自定义 CSS。
- 支持可选认证、多用户、权限配置和 SSO。
- 提供加密的免费异地云备份与恢复能力。
- 支持最小化视图、工作区视图和多种应用打开方式。
组成与分工
- Dashy:提供自托管首页、应用链接聚合、状态监控、组件、主题、认证和页面视图。
- Docker:以容器方式运行 Dashy,统一暴露 Web 服务端口,并支持挂载用户数据目录。
- Docker Hub / GHCR:提供 Dashy 的容器镜像分发渠道。
- YAML 配置文件:通过
conf.yml定义仪表盘内容;用户数据目录还可以存放子配置、图标、字体和自定义 CSS。
前置要求
需要先安装 Docker。部署时使用 Dashy 镜像,并将容器端口映射到宿主机端口。如果需要持久化或自定义内容,应准备一个用户数据目录,并确保其中至少包含 conf.yml。
README 明确说明镜像同时适用于 amd64 和 arm64,也可以选择 latest 或固定版本标签。
实施步骤
1. 使用 Docker 启动临时实例
先用最小命令启动 Dashy,验证容器和 Web 服务是否正常:
docker run -p 4000:8080 lissy93/dashy
2. 启动持久化实例
生产或长期使用时,将宿主机目录挂载到 /app/user-data,并设置容器名称和自动重启策略:
docker run -d \
-p 4000:8080 \
-v /path/to/your/user-data:/app/user-data \
--name my-dashboard \
--restart=always \
lissy93/dashy:latest
3. 准备配置文件
在挂载目录中放置 conf.yml。该目录也可以保存子配置文件、项目图标、字体和自定义 CSS。
4. 访问并验证
容器启动后,通过映射到宿主机的 4000 端口访问 Dashy;确认首页能够加载,并检查配置中的应用或链接是否显示。
使用与配置要点
运行后的核心工作是维护挂载目录中的用户数据和 conf.yml。可以在配置文件中定义应用、链接、页面、布局、主题和组件;README 也说明 Dashy 提供 UI 配置选项,因此可以使用界面完成部分配置。
日常使用中,仪表盘可作为统一入口:通过搜索快速定位应用,查看服务状态,选择在新标签页、当前标签页、剪贴板、弹窗或工作区中打开目标。若需要更复杂的组织方式,可启用多页面或工作区视图。
注意事项与常见问题
- 挂载的
/app/user-data目录必须至少包含conf.yml,否则不能满足 README 规定的配置要求。 4000:8080中,4000 是宿主机端口,8080 是容器端口;访问时应使用宿主机映射端口。- 可以使用
:latest,也可以固定到具体版本,例如4.0.0。 - README 提供 Docker Compose 示例链接,但未在本文中展开其完整内容。
- 需要更多配置参考和使用指南时,应继续查看项目文档。
优缺点
- ✓ 支持 amd64 和 arm64
- ✓ 部署简单
出处
本方案挖掘自开源项目 lissy93/dashy,方案内容与实施命令均来自其 README 原文。
本方案由真实开源项目挖掘整理,实施命令均来自其 README 原文,安装使用请遵循项目开源协议。