HomeLab迷你小主机(x86):Docker部署开源dashy,自托管个人导航、仪表板、可视化小部件

NO.1
dashy简介

github地址

https://github.com/Lissy93/dashy

docker images地址

https://hub.docker.com/r/lissy93/dashy

img


一个自托管个人仪表板。

包括状态检查、小部件、主题、图标包、UI 编辑器等等

特点🌈

  • 🔎 按名称、域名或标签进行即时搜索 + 可自定义的热键和键盘快捷键

  • 🎨 多个内置颜色主题,带有 UI 颜色编辑器并支持自定义 CSS

  • 🧸 许多图标选项 – Font-Awesome、homelab 图标、自动获取 Favicon、图像、表情符号等。

  • 🚦 每个应用程序/链接的状态监控,以进行基本可用性和正常运行时间检查

  • 📊 使用小部件显示来自自托管服务的信息和动态内容

  • 💂 具有多用户访问、可配置权限和 SSO 支持的可选身份验证

  • 🌎 多语言支持,包括 10 多种人工翻译的语言,以及更多即将推出的语言

  • ☁ 提供可选的、加密的、免费的异地云备份和恢复功能

  • 💼 工作区视图,可同时在多个应用程序之间轻松切换

  • 🛩️ 最小视图,用作快速加载的浏览器起始页

  • 🖱️ 选择应用程序启动方法,新选项卡、同一选项卡、弹出模式或在工作区视图中

  • 📏 可定制的布局、大小、文本、组件可见性、排序顺序、行为等。

  • 🖼️ 全屏背景图像、自定义导航栏链接、HTML 页脚、标题等选项。

  • 🚀 使用 Docker、裸机或一键式云部署即可轻松设置

  • ⚙️ 基于 YAML 的简单单文件配置,以及通过 UI 配置应用程序的选项

  • ✨ 正在积极开发中,定期添加改进和新功能

  • 🤏 小捆绑包大小、完全响应式 UI 和用于基本离线访问的 PWA

  • 🆓 100% 免费和开源

  • 🔐 高度重视隐私

  • 🌈 并加载更多…

听说可以用来作为导航网站,可以试一试

之前试过一个开源的导航网站,样式简洁,有后台管理,部署相对简单,功能符合预期

但是

无法改变网站提示语声明,在显眼的地方非要标注github地址和其他声明,导致本来简洁的一个站点像是贴了一个大大的广告贴

所以需要尝试其他人气更高,高度自定义的类导航方案

这个项目 github 13.1k star

img

docker拉取量5M+

img

NO.2
dashy安装

官方docker-compose.yml地址

https://github.com/Lissy93/dashy/blob/master/docker-compose.yml

新建docker-compose.yml配置文件

---
# Welcome to Dashy! To get started, run `docker compose up -d`
# You can configure your container here, by modifying this file
version: "3.8"
services:
dashy:
container_name: Dashy

# Pull latest image from DockerHub
image: lissy93/dashy

# To build from source, replace 'image: lissy93/dashy' with 'build: .'
# build: .

# Or, to use a Dockerfile for your archtecture, uncomment the following
# context: .
# dockerfile: ./docker/Dockerfile-arm32v7

# You can also use an image with a different tag, or pull from a different registry, e.g:
# image: ghcr.io/lissy93/dashy or image: lissy93/dashy:arm64v8

# Pass in your config file below, by specifying the path on your host machine
# volumes:
# - /path/to/my-config.yml:/app/public/conf.yml
# - /path/to/item-icons:/app/public/item-icons

# Set port that web service will be served on. Keep container port as 80
ports:
- 3031:80

# Set any environmental variables
environment:
- NODE_ENV=production
# Specify your user ID and group ID. You can find this by running `id -u` and `id -g`
# - UID=1000
# - GID=1000

# Specify restart policy
restart: unless-stopped

# Configure healthchecks
healthcheck:
test: ['CMD', 'node', '/app/services/healthcheck']
interval: 1m30s
timeout: 10s
retries: 3
start_period: 40s

开放端口

sudo ufw allow 3031

拉取镜像并启动服务

docker-compose up

img

看到下图说明成功启动了

img

NO.3
dashy使用

访问IP:端口

进入首页

img

修改网页语言

dashy默认为英文,但是支持中文

点击右上方工具图标

点击Change App Language

img

下拉选择简体中文

点击保存

img

会自动刷新为简体中文界面

img

添加模块

点击右上角红框图标

进入编辑模式

img

可以看到多了几个选项

一个是Add New Item

一个是添加新的Section

New Item是只小的索引模块,可以是标签,链接等

新的Section是一个大的合集,用来存放小模块的区域,用于分组分类分区

img

尝试添加一个链接

点击Add New Item

链接为Dashy Github导航链接

点击保存

img

可以看到多了一个模块

点击保存退出编辑模式

img

现在是非编辑模式

因为没有配置图标,所以新家的导航没有图标

点击这个导航会跳转到对应链接

img

NO.4
Tips

dashy还有更多的功能去探索

导航的使用场景有很多

  1. docker项目的整理,可以一目了然看到对应项目,点击即跳转官网

  2. 内网项目的跳转,本地服务器部署了太多服务,记不清ip和端口,直接变为内网导航,点击直接跳转(还可以在描述中备注账户和密码)

也可以自己html手写一个导航网站,怎么方便怎么来

看到文章说可以监测服务状态

这也是一直以来多服务的刚需需求

因为碰到过N次因为域名问题,服务器问题,网络问题,断电问题导致的服务下线问题

img

还可以设置可视化小部件

可视化数据也是后续的方向之一

img

还有消息通知,比如服务下线或者异常时,收到微信通知,邮件通知,短信通知等各种通知,不过这不在本文的范围,仅临时记录

END.

写文不易,如果看到这里,不妨点赞和收藏,下期见