【实用Docker项目】给你的自建服务整一个炫酷的面板——Dashy 一个功能非常强大的面板
本文最后更新于 2024-07-11,
若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益, 请联系我 删除。
本站只有Telegram群组为唯一交流群组, 点击加入
文章内容有误?申请成为本站文章修订者或作者? 向站长提出申请
Dashy,是一个功能非常非常强大的面板,而且如果你查看他的文档,会发现写的非常非常详细。
特点
- 🚦 对您的每个应用程序/链接进行实时状态监测
- 📊 使用小工具来显示来自自我托管服务的信息和动态内容
- 🔎 按名称、域名或标签进行即时搜索 + 可定制的热键和键盘快捷方式
- 🎨 许多内置的颜色主题,带有UI颜色编辑器并支持自定义CSS
- 🧸 许多图标选项 – Font-Awesome、homelab图标、自动获取Favicon、图像、表情符号等。
- 💂 可选的认证,包括多用户访问、可配置的权限和SSO支持
- 🌎 多语言支持,有10多种人工翻译的语言,还有更多的语言正在开发中
- ☁ 可选的、加密的、免费的异地云备份和恢复功能
- 💼 工作区视图,可同时在多个应用程序之间轻松切换
- 🛩️ 一个最小的视图,可作为快速加载的浏览器起始页使用
- 🖱️ 选择应用程序的启动方式:新标签、同一标签、剪贴板、弹出式模式或在工作区视图中打开
- 📏️可定制布局、尺寸、文本、组件可见性、排序顺序、行为等。
- 🖼️全屏背景图片、自定义导航栏链接、HTML页脚、标题等选项。
- 🚀️容易用Docker设置,或在裸机上,或用一键云部署
- ⚙️简单的基于YAML的单文件配置,以及通过UI配置应用程序的选项。
- ✨ 正在积极开发,定期添加改进和新功能
- ᾐ极小的软件包,完全响应的UI,和PWA的基本离线访问。
- 🆓 100%免费和开放源代码
- 🔐 高度重视隐私问题
- 🌈 还有更多……
关键,他还能添加很多小的组件,比如配合 glances
,监控你系统运行情况,总之,非常适合搭建在自己的Nas上,作为一个“主控”面板。
项目地址:https://github.com/Lissy93/dashy
官网地址:https://dashy.to/
Demo地址:https://demo.dashy.to/
安装Docker🐳
利用Docker-compose搭建,易于更新
先建立一个文件夹
mkdir -p /root/data/docker_data/dashy/{icons,public}
cd /root/data/docker_data/dashy
vim docker-compose.yml
docker-compose填入以下内容:
version: '3.3'
services:
dashy:
ports:
- '8395:80'
volumes:
- '/root/data/docker_data/dashy/public/conf.yml:/app/public/conf.yml'
- '/root/data/docker_data/dashy/icons:/app/public/item-icons/icons'
container_name: dashy
restart: unless-stopped
image: 'lissy93/dashy:latest'
创建conf文件
cd public/
nano conf.yml
粘贴如下官方Demo的内容:
---
# Page meta info, like heading, footer text and nav links
pageInfo:
title: Dashy
description: Welcome to your new dashboard!
navLinks:
- title: GitHub
path: https://github.com/Lissy93/dashy
- title: Documentation
path: https://dashy.to/docs
# Optional app settings and configuration
appConfig:
theme: colorful
layout: auto
iconSize: medium
language: en
auth:
users:
- user: your-preferred-username # 改成自己的用户名
hash: hash-of-a-password-you-choose-using-sha256-hashing # cha256 哈希加密,地址用这个: https://emn178.github.io/online-tools/sha256.html
type: admin
# Main content - An array of sections, each containing an array of items
sections:
- name: Getting Started
icon: fas fa-rocket
items:
- title: Dashy Live
description: Development a project management links for Dashy
icon: https://i.ibb.co/qWWpD0v/astro-dab-128.png
url: https://live.dashy.to/
target: newtab
- title: GitHub
description: Source Code, Issues and Pull Requests
url: https://github.com/lissy93/dashy
icon: favicon
- title: Docs
description: Configuring & Usage Documentation
provider: Dashy.to
icon: far fa-book
url: https://dashy.to/docs
- title: Showcase
description: See how others are using Dashy
url: https://github.com/Lissy93/dashy/blob/master/docs/showcase.md
icon: far fa-grin-hearts
- title: Config Guide
description: See full list of configuration options
url: https://github.com/Lissy93/dashy/blob/master/docs/configuring.md
icon: fas fa-wrench
- title: Support
description: Get help with Dashy, raise a bug, or get in contact
url: https://github.com/Lissy93/dashy/blob/master/.github/SUPPORT.md
icon: far fa-hands-helping
下载icon
cd /root/data/docker_data/dashy/icons
git clone https://github.com/walkxcode/dashboard-icons.git # 下载icons,新版的好像系统自带,如果能正常运行可以不执行这一条。
cd /root/data/docker_data/dashy
运行
docker-compose up -d
我们现在可以输入 http://ip:8395/
访问了。
更新
cd /root/data/docker_data/dashy # 进入docker-compose所在的文件夹
docker-compose pull # 拉取最新的镜像
docker-compose up -d # 重新更新当前镜像
卸载
cd /root/data/docker_data/dashy # 进入docker-compose所在的文件夹
docker-compose down # 停止容器,此时不会删除映射到本地的数据
rm -rf /root/data/docker_data/dashy # 完全删除映射到本地的数据
反向代理
参考教程:安装及使用
⚠️Nginx Proxy Manager(以下简称NPM)会用到80、443端口,所以本机不能占用(比如原来就有Nginx)
互联网使用请确保完成了域名解析
安装glances监控服务器
服务器监控插件里面调用的数据,其实是从glances里面获得的。
Glances 是一个跨平台的、基于命令行的系统监控工具,由 Python 语言编写,使用 Python 的 psutil 库来抓取系统数据。可以监控 CPU、负载均衡、内存、网络设备、磁盘 I/O、进程和文件系统使用等。
执行命令
apt install python3 python3-pip -y
pip3 install bottle
pip3 install glances
Bottle是一个用于Python编程语言的WSGI微web框架。它被设计为快速、简单和轻量的,可以容易的和快速的开发web应用。它被作为一个单一文件模块发行,不依赖于其他的Python标准库。同一个模块可运行于Python 2.7和3.x。
直接执行命令
glances
就可以显示服务器系统信息了。
输入:
glances -w
就可以利用网页来打开。
不过,只要我们 ctrl + c
服务就停止了,所以我们需要给他弄成后台启动,写一个 service
sudo vi /etc/systemd/system/glances.service # 名字就叫 glances.service
输入下面这个(默认你是root用户):
[Unit]
Description = Glances in Web Server Mode
After = network.target
[Service]
ExecStart = /usr/local/bin/glances -w -t 5
[Install]
WantedBy = multi-user.target
保存退出。
systemctl enable glances.service # 开机自动启动glances
systemctl start glances.service # 启动glances
systemctl status glances.service # 查看glances状态
systemctl restart glances.service # 重启glances
安装监控插件
接下来,配置一下 conf.yml
文件,提供参考。更多的配置可以看文档:
例如添加一个天气插件
- type: weather
options:
apiKey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
city: Shanghai
units: metric
hideDetails: true
注意观察,其实 yml
文件都是有规律的,灵活变通。
Font Awesome:http://www.fontawesome.com.cn/
图标路径:icons/dashboard-icons/png/xxxx.png
修改完之后之后再重新运行 Dashy 即可:
cd cd /root/data/docker_data/dashy
docker-compose restart