轻量级简约仪表板Dasherr

news2024/11/27 11:34:01

什么 Dasherr ?

这是老苏在逛 reddit 时偶然发现的,作者刚发布,这是一款全新的轻量级仪表板。

官方目前没有提供 docker,但本身的安装方法并不复杂,只要将代码下载后,将 www 目录中的文件放入到 Web 服务器中发布目录就可以,像群晖也可用放到 Web Station

虽然简单,不过老苏相信绝大部分人应该和老苏一样懒,最好是能一键搞定的那种 😂

构建镜像

如果你不想自己构建,可以跳过,直接阅读下一章节

Dockerfile 很简单,就是在 nginx 中把源代码放进去了

FROM nginx:1.12-alpine

WORKDIR /app
COPY . ./

EXPOSE 80
CMD ["sh", "run.sh"]

run.sh 做的事情是把源代码复制到了我们新建的用来映射的目录,这主要是为了方便对 settings.json 进行修改

老苏只是简单的做了判断,避免重启或者升级时直接覆盖掉了 settings.json,记得备份才是根本;

#!/bin/bash

if [ ! -f "/usr/share/nginx/html/settings.json" ];then
	echo "文件不存在"
	cp -r ./www/. /usr/share/nginx/html
 else
	echo "文件存在"
fi

nginx -g "daemon off;"

构建镜像和容器运行的基本命令如下👇

# 下载代码
git clone https://github.com/erohtar/Dasherr.git
  
# 或者加个代理  
git clone https://ghproxy.com/github.com/erohtar/Dasherr.git
  
# 进入目录  
cd Dasherr

# 将 Dockerfile 放入当前目录
  
# 构建镜像
docker build -t wbsu2003/dasherr:v1 .

# 运行容器
docker run -d \
   --name dasherr \
   -p 18080:80 \
   -v $(pwd)/www:/usr/share/nginx/html \
   wbsu2003/dasherr:v1

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 dasherr ,选择第一个 wbsu2003/dasherr,版本选择 latest

docker 文件夹中,创建一个新文件夹 dasherr,并在其中建一个子文件夹 www

文件夹装载路径说明
docker/dasherr/www/usr/share/nginx/html存放设置和网页文件

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
1808080

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 dasherr 和 子目录
mkdir -p /volume2/docker/dasherr/www

# 进入 dasherr 目录
cd /volume2/docker/dasherr

# 运行容器
docker run -d \
   --name dasherr \
   -p 18080:80 \
   -v $(pwd)/www:/usr/share/nginx/html \
   wbsu2003/dasherr:latest

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  dasherr:
    image: wbsu2003/dasherr
    container_name: dasherr
    restart: unless-stopped
    ports:
      - 18080:80
    volumes:
      - ./www:/usr/share/nginx/html

然后执行下面的命令

# 新建文件夹 dasherr 和 子目录
mkdir -p /volume2/docker/dasherr/www

# 进入 dasherr 目录
cd /volume2/docker/dasherr

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:18080 就能看到主界面

这是默认的 settings.json 的效果

所以需要对 settings.json 进行配置

配置

page

  • title: 仪表板的标题,支持中文,但必须使用 UTF-8 编码格式;
  • theme: 来自 settings.json 文件中主题部分的当前主题名称,默认提供了 15 个主题可供选择;
  • openTab: 当您单击服务磁贴时,此设置决定它是在新选项卡还是同一选项卡中打开(可能的值newsame

示例代码:

	"page": {
		"title": "老苏的仪表板",
		"theme": "Onedark",
		"openTab": "new"
	},

保存后不需要重启容器,直接刷新页面就可以

widgets

目前只有一个,而且需要安装 Glances, 老苏以前写过 Glances

文章传送门:Glances实时监视群晖运行状况

不想看也可以执行下面的命令,一键安装

# 一键启动
docker run -d \
   --restart="always" \
   --name="glances" \
   -p 61208-61209:61208-61209 \
   -e GLANCES_OPT="-w" \
   -v /var/run/docker.sock:/var/run/docker.sock:ro \
   --pid host \
   nicolargo/glances
  • url: 以斜线结尾的服务 URL
  • refreshMs: 更新前等待多少毫秒(默认为 5000 毫秒或 5 秒)

示例代码:

"widgets": {
	"glances": {
		"url": "http://192.168.0.197:61208/",
		"refreshMs": 5000
	}
}

保存后刷新页面,已经有相关信息了

sections

这部分是分类

  • name:该分类的名称
  • tiles: 见下文
  • disable: (可选)如果设置为1,则不会显示此部分;

tiles

  • name- 网站名称
  • url- 以斜线结尾的服务 URL
  • faIcon- 您想为此服务显示的 FontAwesome 图标的 ID,可以到下面网站查找:
    • https://fontawesome.com/search
    • https://www.thinkcmf.com/font/font_awesome/icons.html
  • disable- (可选)如果设置为1,则不会显示此 Tile
  • disableCheck- (可选)如果设置为1,则不会对该 Tile 进行在线检查

示例代码:

	"sections": [
		{
			"name": "示例",
			"tiles": [
				{
					"name": "群晖主页",
					"url": "http://192.168.0.197:5000/",
					"faIcon": "fa-solid fa-house"
				},
				{
					"name": "Glances",
					"url": "http://192.168.0.197:61208/",
					"faIcon": "fa fa-microchip"
				}
			]
		},

保存后刷新

themes

  • background:本地或网络壁纸背景
  • colorBg: 页面的背景颜色(仅在background未设置时使用)
  • colorPr: 页面的主要文本颜色
  • colorSc: 页面的辅助文本颜色
  • colorOn启用服务的“点”的颜色
  • colorOf: 服务禁用“点”的颜色

示例代码:

		"Onedark": {
			"background": "https://images2.alphacoders.com/540/540010.jpg",
			"colorBg": "#282c34",
			"colorPr": "#dfd9d6",
			"colorSc": "#98c379",
			"colorOn": "#98c379",
			"colorOf": "#808080"
		},

看来要让图片和主题颜色搭配还不是一件容易的事情

在这里插入图片描述

升级和备份

因为采用了单文件设置,所以 settings.json 文件的备份很重要,不管是否升级,记得备份

因为项目还在初期,所以大概率会经常升级,但老苏又太懒,所以如果想体验新版本,可以通过采用官方的方式,下载源代码,并将www目录放入 dasherr 目录,然后刷新网页就行了

参考文档

erohtar/Dasherr: A minimal and lightweight dashboard for your self-hosted services (and bookmarks)
地址:https://github.com/erohtar/Dasherr

Dasherr - A new minimalistic and lightweight dashboard for your self-hosted services (FOSS) : selfhosted
地址:https://www.reddit.com/r/selfhosted/comments/ym0x0l/dasherr_a_new_minimalistic_and_lightweight/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/3998.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

蓝桥杯入门即劝退(五)跑断腿的小蓝

九层之台,起于垒土,你我皆是垒土人✔ 愿我的文章对你有所帮助! 欢迎关注点赞评论,共同学习,共同进步! 一、题目(填空题) 小蓝每天都锻炼身体。 正常情况下,小蓝每天跑 …

阿里测试8年,从5K到40K,这178天的心酸只有我自己知道···

从事测试工作已8年有余了,今天想聊一下自己刚入门时和现在的今昔对比,虽然现在也没什么大成就,只能说笑谈一下自己的测试生涯。 技术栈的变化 刚开始是做的开发,也是做了好几年的开发,后面软件测试的风潮开始了&…

前端工程师的摸鱼日常(17)

声明:全文纯属个人想法,无论提到什么,都无贬低和抬高之意,也没有对当今直正者感到不满。如果有部分内容与我思想不一,或戳于谁之痛处,可以跳过浏览,就当我在讲故事或者笑话。如果内容侵犯到XXX的…

CH34X linux驱动安装,参考代码例程

想用USB转I2C工具调试个I2C接口芯片未果。 驱动安装参考下面内容: 1. 使用的系统环境 本文使用Ubuntu 20.04 LTS版本Linux系统为测试环境。 2. 使用到的工具软件介绍 Linux系统下编译CH365/CH367的驱动使用到的工具主要有gcc和make,版本如下所示&…

“清华女神”回国,赤子之心,如愿以偿

目录1、女神科学家颜宁是谁2、颜宁在深圳人才论坛最新演讲,以及招聘邮箱3、颜宁微博回应4、结论与展望最近女神科学家颜宁回国了,整个科学界和中国都沸腾了,也上了热搜,成了热门话题,越来越多的海归精英选择回国 1、…

LeetCode 每日一题——816. 模糊坐标

1.题目描述 816. 模糊坐标 我们有一些二维坐标,如 “(1, 3)” 或 “(2, 0.5)”,然后我们移除所有逗号,小数点和空格,得到一个字符串S。返回所有可能的原始字符串到一个列表中。 原始的坐标表示法不会存在多余的零,所…

5_会话管理实现登录功能

一 会话管理登录功能 前置了解 初识cookie 如下图,浏览器初次访问服务器时,服务器生成数据将数据存放在浏览器的cookie中,当浏览器再次访问服务器时将会携带该cookie,此时服务器就可以确定该浏览器的身份了。 session的使用 如下图,session的实现需要借助cookie,不同cookie的是…

荧光标记氨基酸:荧光标记L-苯丙氨酸乙酯盐酸盐,L-phenylalanine ethylester labeled

产品名称:荧光标记L-苯丙氨酸乙酯盐酸盐,L-phenylalanine ethylester labeled L-苯丙氨酸乙酯盐酸盐是化学物质,分子式是C11H16NO2。别名L-苯基丙氨酸乙酯盐酸盐,熔点: 154-157ºC,比旋光度: 33.7º(…

使用myCobot 280机械臂校准OAK智能深度相机

编辑:OAK中国 首发:oakchina.cn 喜欢的话,请多多👍⭐️✍ 内容可能会不定期更新,官网内容都是最新的,请查看首发地址链接。 ▌前言 Hello,大家好,这里是OAK中国,我是助手…

第三站:函数(第三幕)递归训练

目录 一、编写一个函数实现n的k次方,使用递归实现。(k为整数) 二、写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和 三、编写一个函数 reverse_string(char * string)(递归实现&#x…

WebDAV之葫芦儿·派盘+墨阅

墨阅 支持webdav方式连接葫芦儿派盘。 是一款专注于帮助用户离线缓存网页文档图书漫画的免费工具APP。您可以利用墨阅收集来自互联网网站平台的公开文章,图片,漫画等,可以对网页样式进行调整,支持自定义动作,批量离线等功能方便用户日常离线。目前支持小说,markdown,图…

公众号搜题系统

公众号搜题系统 本平台优点: 多题库查题、独立后台、响应速度快、全网平台可查、功能最全! 1.想要给自己的公众号获得查题接口,只需要两步! 2.题库: 查题校园题库:查题校园题库后台(点击跳转…

语义分割之RTFormer介绍

语义分割之RTFormer介绍 论文链接:https://arxiv.org/abs/2210.07124 代码地址:https://github.com/PaddlePaddle/PaddleSeg ViT以来,Transformer作为特征提取器在语义分割领域证明了自己,但是由于Transformer的核心 muti-self-…

苹果电脑提高工作效率alfred 5中文

Mac电脑上哪个效率工具好用呢?alfred 5是最强大的效率启动工具之一,丰富的插件资源、简单的上手成本,会是你提高 Mac 使用效率的得力助手。可通过热键,关键字,文本扩展等提高您的效率。搜索您的Mac和网络,并…

Sprint产品待办列表的优先级要怎么排?

在梳理产品待办事项列表的过程中,产品负责人需要先做优先级排列,保证我们在一定的时间盒内能够交付需要优先级最高、最具价值的用户故事。 那这个用户故事的优先级要怎么排列,我们怎样选择用户故事的实现顺序? 有一个实践可以推…

力扣(LeetCode)816. 模糊坐标(C++)

模拟 一次遍历 sss ,尝试对遍历到的位置进行分割。对分割点左右字符串 ltltlt , rtrtrt 分别构造子串。 构造子串的规则: 整数不以 000 开头,(特例)单独的 000 可以作为整数。小数不以 000 结尾。小数的整数位是 000 ,则整数位不能组成新数…

怎么给PDF添加页面?推荐三个PDF如何插入页面小妙招

在我们生活中,平时接触PDF文件可能没有接触Word文件那么的多。像处理PDF文件这种问题上并没有Word文件那么的容易,毕竟PDF它不易进行内容编辑。这时候如果有小伙伴需要对PDF文件进行修改或者进行插入页面,但是PDF文件是无法直接进行修改的。那…

做期货的阶段(做期货的几个阶段)

如何自己做好期货 学习交易大致有三阶段:直观直觉阶段,看到涨就做多,看到跌就做空,结果半赢半输;学习积累的阶段,看到涨跌不觉涨跌,想得很多,结果赢少赔多;领悟后再次直…

软件架构师考试的真实感受

近1个半月,因准备了软件架构师的考试,停了BLOG,今天想写点东西作为阶段性的沉淀。 节奏紧 和软设比起来,最直观的感受就是节奏紧,软设上午通常能够提前一个小时考完,加上下午2点才开考,中间有…

Java UML 类图

继承 继承:重用父类的某些功能 缺点:强耦合 耦合:修改一方,会影响另一方 应用:是否需要“向上转型” 接口 行为的抽象、可跨越不同的类 不包含实现实现类需完全实现可实现多个接口 是一种“自顶向下”的设计&…