Dashy 是一款功能强大的自托管仪表盘应用,让你能够聚合所有常用服务和工具到一个直观的界面中。本教程将指导你从零开始搭建属于自己的 Dashy 仪表盘。
什么是 Dashy?
Dashy 是一个开源的家庭实验室仪表盘,可以让你将所有的网络服务、应用和工具集中到一个美观的界面中。它支持自定义布局、主题、图标,并且具有服务状态检查、搜索功能等实用特性。
系统要求
最低配置:1GB 内存,2GB 磁盘空间
推荐配置:2GB+ 内存,5GB+ 磁盘空间
操作系统:支持 Linux、Windows、macOS
容器引擎:Docker(推荐)或 Podman
方法一:使用 Docker 快速部署(推荐)
步骤 1:安装 Docker
首先确保你的系统已安装 Docker:
# Ubuntu/Debian
sudo apt update
sudo apt install docker.io
sudo systemctl enable docker
sudo systemctl start docker
# 将用户添加到 docker 组(避免每次使用 sudo)
sudo usermod -aG docker $USER
newgrp docker步骤 2:运行 Dashy 容器
docker run -d \
-p 8080:8080 \
-v /path/to/your/config.yml:/app/user-data/conf.yml \
--name my-dashboard \
--restart=always \
lissy93/dashy:latest参数说明:
-p 8080:8080:将容器端口映射到主机端口-v:挂载配置文件(首次运行可先省略此参数)--restart=always:容器自动重启--name:为容器命名
步骤 3:访问仪表盘
打开浏览器访问 http://你的服务器IP:8080,即可看到 Dashy 的默认界面。
方法二:使用 Docker Compose 部署
创建 docker-compose.yml文件:
version: "3.8"
services:
dashy:
image: lissy93/dashy
container_name: Dashy
volumes:
- ./conf.yml:/app/user-data/conf.yml
ports:
- 8080:8080
environment:
- NODE_ENV=production
restart: unless-stopped
healthcheck:
test: ['CMD', 'node', '/app/services/healthcheck']
interval: 1m30s
timeout: 10s
retries: 3
start_period: 40s启动服务:
docker-compose up -d方法三:从源码构建
适合想要自定义修改或开发的用户:
# 克隆代码库
git clone https://github.com/Lissy93/dashy.git
cd dashy
# 安装依赖
yarn install
# 构建应用
yarn build
# 启动服务
yarn start基础配置
创建配置文件 conf.yml:
pageInfo:
title: "我的个人仪表盘"
description: "所有服务的集中入口"
appConfig:
theme: "dark"
language: "zh-CN"
layout: "auto"
sections:
- name: "开发工具"
icon: "fas fa-code"
items:
- title: "GitHub"
description: "代码托管平台"
icon: "fab fa-github"
url: "https://github.com"
target: "newtab"
- title: "VS Code Server"
description: "在线代码编辑器"
icon: "fas fa-laptop-code"
url: "http://localhost:8081"
statusCheck: true
- name: "媒体服务"
icon: "fas fa-film"
items:
- title: "Plex"
description: "媒体服务器"
icon: "fab fa-plex"
url: "http://localhost:32400"
statusCheck: true
- title: "Jellyfin"
description: "开源媒体系统"
icon: "fas fa-play-circle"
url: "http://localhost:8096"高级配置功能
1. 多页面支持
pages:
- name: "监控页面"
path: "/monitoring.yml"
- name: "开发环境"
path: "/dev.yml"2. 状态检查
启用服务状态监控:
appConfig:
statusCheck: true
statusCheckInterval: 300 # 每5分钟检查一次3. 搜索功能
appConfig:
webSearch:
searchEngine: "google"
openingMethod: "newtab"4. 身份验证
appConfig:
auth:
users:
- user: "admin"
hash: "你的密码哈希"
type: "admin"管理维护
更新 Dashy
# 停止并删除旧容器
docker stop my-dashboard
docker rm my-dashboard
# 拉取最新镜像并重新运行
docker pull lissy93/dashy:latest
docker run -d [你的参数] lissy93/dashy:latest自动更新(使用 Watchtower)
docker run -d \
--name watchtower \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower备份配置
# 备份配置文件
cp /path/to/your/config.yml /backup/dashy-config-$(date +%Y%m%d).yml
# 备份整个容器
docker commit my-dashboard dashy-backup
docker save -o dashy-backup.tar dashy-backup故障排除
常见问题解决
容器启动失败
检查端口是否被占用:
netstat -tulpn | grep 8080查看容器日志:
docker logs my-dashboard
配置不生效
确认配置文件路径正确
检查 YAML 语法是否正确
重启容器应用更改
状态检查失败
确认目标服务可访问
检查防火墙设置
验证 URL 格式是否正确
内存不足
增加 Docker 内存限制:
--memory=2g优化系统内存使用
日志查看
# 查看实时日志
docker logs -f my-dashboard
# 查看资源使用情况
docker stats my-dashboard安全建议
使用反向代理:配置 Nginx 或 Caddy 提供 HTTPS
防火墙配置:限制访问 IP 范围
定期更新:保持 Dashy 和依赖项最新
备份配置:定期备份配置文件
访问控制:启用身份验证功能
自定义主题
Dashy 支持深度自定义,你可以:
修改颜色主题
添加自定义 CSS
更换图标和字体
调整布局和动画效果
结语
Dashy 是一个功能丰富且高度可定制的仪表盘解决方案。通过本教程,你应该已经成功搭建了自己的 Dashy 实例,并了解了基本的配置和管理方法。
随着使用的深入,你可以继续探索更多高级功能,如小部件集成、API 连接、多用户支持等,让 Dashy 更好地服务于你的工作流程。
提示:记得定期查看 官方文档以获取最新功能和最佳实践。