Skip to content

shuiping233/openwrt-diskio-api

Repository files navigation

openwrt monitor api

  • 本项目由golang+vue3+TailwindCss编写,目的是给openwrt设备提供一个更好看的网页端仪表盘和更便于调用的无鉴权系统状态HTTP API

Warning

本项目仍在开发中,仪表盘页面尚未足够完善,请谨慎在生产环境使用

仪器盘截图

system preview network connection detail monitoring charts settings window

使用方法

  1. releases下载最新构建产物
  2. 将二进制文件和./scripts/etc/inid.d/diskio-api服务文件部署到openwrt设备上,推荐将二进制文件放置在/usr/bin/中,服务文件放置在/etc/init.d/
  3. 使用文本编辑器打开服务文件,修改必要的"文件路径"或"监控端口等配置
  4. 给服务文件和二进制文件chmod +x权限,使用/etc/init.d/diskio-api enable使其服务开机自启,最后使用/etc/init.d/diskio-api start来启动服务

工具要求

  • go >= 1.18
  • node.js >= 20.x
  • pnpm >= 8.x

Warning

项目后端仅支持linux发行版,并只优先适配openwrt,虽然go支持windows交叉编译linux二进制产物,但是不保证能在windows上编译成功

编译方法

  1. 在任意linux发行版上,clone本项目
  2. 后端编译需要go编译器goreleaser,下载和安装教程请看对应官网
  3. 前端编译需要node.jspnpm,下载和安装教程请看对应官网
  4. 确保前置前置所需工具安装完毕后,在项目目录下,使用goreleaser release --snapshot --clean命令即可进行编译,编译产物默认在./dist目录下`

单独手动编译前端

mkdir ./dist
cd ./frontend
pnpm install
pnpm vite build --outDir ../dist/frontend  --emptyOutDir

单独手动编译后端

Warning

需要先编译前端,因为使用了embed将前端文件打包到二进制产物中,embed找不到./dist/frontend文件夹可能会引起编译报错

go mod tidy
go build -o openwrt-monitor-api ./backend/main.go

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors