diff --git a/apps/beszel-agent/0.9.1/data.yml b/apps/beszel-agent/0.9.1/data.yml new file mode 100644 index 00000000..9322ebb2 --- /dev/null +++ b/apps/beszel-agent/0.9.1/data.yml @@ -0,0 +1,33 @@ +additionalProperties: + formFields: + - default: "host" + edit: true + envKey: NETWORK_MODE + labelEn: Drive path + labelZh: 网络模式 + required: true + type: select + values: + - label: 主机网络模式 + value: "host" + - label: 桥接网络模式 + value: "bridge" + - label: 无网络模式 + value: "none" + - label: 1panel-network + value: "1panel-network" + - default: 45876 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number + - default: "" + edit: true + envKey: KEY + labelZh: 公钥 (Hub端生成) + labelEn: Public key (Generated by Hub) + required: true + type: text diff --git a/apps/beszel-agent/0.9.1/docker-compose.yml b/apps/beszel-agent/0.9.1/docker-compose.yml new file mode 100644 index 00000000..97a77b79 --- /dev/null +++ b/apps/beszel-agent/0.9.1/docker-compose.yml @@ -0,0 +1,23 @@ +networks: + 1panel-network: + external: true + +services: + beszel-agent: + image: henrygd/beszel-agent:0.9.1 + container_name: ${CONTAINER_NAME} + labels: + createdBy: "Apps" + restart: always + network_mode: ${NETWORK_MODE:-host} + ports: + - ${PANEL_APP_PORT_HTTP}:${PANEL_APP_PORT_HTTP} + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - /var/run/docker.sock:/var/run/docker.sock + environment: + - TZ=Asia/Shanghai + - LOG_LEVEL=info + - PORT=${PANEL_APP_PORT_HTTP:-45876} diff --git a/apps/beszel-agent/0.9.1/envs/default.env b/apps/beszel-agent/0.9.1/envs/default.env new file mode 100644 index 00000000..cd05f46e --- /dev/null +++ b/apps/beszel-agent/0.9.1/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/apps/beszel-agent/0.9.1/envs/global.env b/apps/beszel-agent/0.9.1/envs/global.env new file mode 100644 index 00000000..e10989fe --- /dev/null +++ b/apps/beszel-agent/0.9.1/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/apps/beszel-agent/0.9.1/scripts/init.sh b/apps/beszel-agent/0.9.1/scripts/init.sh new file mode 100644 index 00000000..07fb8c3f --- /dev/null +++ b/apps/beszel-agent/0.9.1/scripts/init.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/beszel-agent/0.9.1/scripts/uninstall.sh b/apps/beszel-agent/0.9.1/scripts/uninstall.sh new file mode 100644 index 00000000..c86c4fbc --- /dev/null +++ b/apps/beszel-agent/0.9.1/scripts/uninstall.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/beszel-agent/0.9.1/scripts/upgrade.sh b/apps/beszel-agent/0.9.1/scripts/upgrade.sh new file mode 100644 index 00000000..07fb8c3f --- /dev/null +++ b/apps/beszel-agent/0.9.1/scripts/upgrade.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/beszel-agent/README.md b/apps/beszel-agent/README.md new file mode 100644 index 00000000..7e9ad66f --- /dev/null +++ b/apps/beszel-agent/README.md @@ -0,0 +1,77 @@ +# Beszel - 代理 (Agent) + +轻量级的服务器监控平台,包含 Docker 统计信息、历史数据和警报功能 + +![Beszel](https://file.lifebus.top/imgs/beszel_cover.png) + +![](https://img.shields.io/badge/%E6%96%B0%E7%96%86%E8%90%8C%E6%A3%AE%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E5%B7%A5%E4%BD%9C%E5%AE%A4-%E6%8F%90%E4%BE%9B%E6%8A%80%E6%9C%AF%E6%94%AF%E6%8C%81-blue) + +## 特性 + +### 轻量级 + +比主要解决方案更小,资源占用更少。 + +### 简单 + +易于设置,无需公网暴露。 + +### Docker 统计 + +跟踪每个容器的 CPU、内存和网络使用历史。 + +### 警报 + +可配置 CPU、内存、磁盘、带宽、温度和状态的警报。 + +### 多用户 + +用户管理自己的系统。管理员可以在用户之间共享系统。 + +### OAuth / OIDC + +支持多种 OAuth2 提供程序。可以禁用密码验证。 + +### 自动备份 + +从磁盘或 S3 兼容的存储保存和恢复数据。 + +### REST API + +在您自己的脚本和应用程序中使用或更新您的数据。 + +### 架构 + +Beszel 由两个主要组件组成:中心 (hub) 和 代理 (agent)。 + ++ 中心 (hub): 一个基于 PocketBase 构建的 Web 应用程序,提供用于查看和管理连接系统的仪表板。 ++ 代理 (agent): 在您要监控的每个系统上运行,创建一个最小的 SSH 服务器以将系统指标传递到中心。 + +### 安装说明 + +#### 主机网络模式 + +代理必须使用主机网络模式才能访问网络接口指标,这将自动暴露端口。如果需要,可以使用环境变量更改端口。 + +#### 磁盘监控 + +您可以使用 Beszel 监控磁盘、分区或远程挂载。 + +> 使用 lsblk 命令查找分区的名称和挂载点。 + +在容器的 /extra-filesystems 目录中挂载目标文件系统中的文件夹。 + +```yml +services: + beszel-agent: + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - /<挂载点>/.beszel:/extra-filesystems/<挂载点>:ro +``` + ++ 挂载点: 挂载点的名称。 ++ ro: 只读模式 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/apps/beszel-agent/data.yml b/apps/beszel-agent/data.yml new file mode 100644 index 00000000..71036200 --- /dev/null +++ b/apps/beszel-agent/data.yml @@ -0,0 +1,14 @@ +additionalProperties: + key: beszel-agent + name: Beszel Agent + tags: + - WebSite + - Local + shortDescZh: 轻量级的服务器监控平台,包含 Docker 统计信息、历史数据和警报功能 + shortDescEn: A lightweight server monitoring platform with Docker statistics, historical data, and alerting capabilities + type: website + crossVersionUpdate: true + limit: 0 + website: https://beszel.dev/ + github: https://github.com/henrygd/beszel/ + document: https://beszel.dev/ diff --git a/apps/beszel-agent/logo.png b/apps/beszel-agent/logo.png new file mode 100644 index 00000000..24e6e7a7 Binary files /dev/null and b/apps/beszel-agent/logo.png differ diff --git a/apps/beszel/0.9.1/data.yml b/apps/beszel/0.9.1/data.yml new file mode 100644 index 00000000..5baca759 --- /dev/null +++ b/apps/beszel/0.9.1/data.yml @@ -0,0 +1,41 @@ +additionalProperties: + formFields: + - default: "/home/beszel" + edit: true + envKey: BESZEL_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: 8090 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number + - default: "false" + edit: true + envKey: DISABLE_PASSWORD_AUTH + labelZh: 密码验证功能 + labelEn: Disable password authentication + required: true + type: select + values: + - label: 禁用 + value: "true" + - label: 启用 + value: "false" + - default: "false" + edit: true + envKey: USER_CREATION + labelZh: 第三方用户注册功能 + labelEn: Third-party user registration + required: true + type: select + values: + - label: 禁用 + value: "true" + - label: 启用 + value: "false" diff --git a/apps/beszel/0.9.1/docker-compose.yml b/apps/beszel/0.9.1/docker-compose.yml new file mode 100644 index 00000000..56970413 --- /dev/null +++ b/apps/beszel/0.9.1/docker-compose.yml @@ -0,0 +1,22 @@ +networks: + 1panel-network: + external: true + +services: + beszel: + image: henrygd/beszel:0.9.1 + container_name: ${CONTAINER_NAME} + labels: + createdBy: "Apps" + restart: always + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:8090 + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${BESZEL_ROOT_PATH}/data:/beszel_data + environment: + - TZ=Asia/Shanghai diff --git a/apps/beszel/0.9.1/envs/default.env b/apps/beszel/0.9.1/envs/default.env new file mode 100644 index 00000000..cd05f46e --- /dev/null +++ b/apps/beszel/0.9.1/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/apps/beszel/0.9.1/envs/global.env b/apps/beszel/0.9.1/envs/global.env new file mode 100644 index 00000000..e10989fe --- /dev/null +++ b/apps/beszel/0.9.1/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/apps/beszel/0.9.1/scripts/init.sh b/apps/beszel/0.9.1/scripts/init.sh new file mode 100644 index 00000000..07fb8c3f --- /dev/null +++ b/apps/beszel/0.9.1/scripts/init.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/beszel/0.9.1/scripts/uninstall.sh b/apps/beszel/0.9.1/scripts/uninstall.sh new file mode 100644 index 00000000..c86c4fbc --- /dev/null +++ b/apps/beszel/0.9.1/scripts/uninstall.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/beszel/0.9.1/scripts/upgrade.sh b/apps/beszel/0.9.1/scripts/upgrade.sh new file mode 100644 index 00000000..07fb8c3f --- /dev/null +++ b/apps/beszel/0.9.1/scripts/upgrade.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/beszel/README.md b/apps/beszel/README.md new file mode 100644 index 00000000..0852f4d7 --- /dev/null +++ b/apps/beszel/README.md @@ -0,0 +1,52 @@ +# Beszel - 服务端 (Hub) + +轻量级的服务器监控平台,包含 Docker 统计信息、历史数据和警报功能 + +![Beszel](https://file.lifebus.top/imgs/beszel_cover.png) + +![](https://img.shields.io/badge/%E6%96%B0%E7%96%86%E8%90%8C%E6%A3%AE%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E5%B7%A5%E4%BD%9C%E5%AE%A4-%E6%8F%90%E4%BE%9B%E6%8A%80%E6%9C%AF%E6%94%AF%E6%8C%81-blue) + +## 特性 + +### 轻量级 + +比主要解决方案更小,资源占用更少。 + +### 简单 + +易于设置,无需公网暴露。 + +### Docker 统计 + +跟踪每个容器的 CPU、内存和网络使用历史。 + +### 警报 + +可配置 CPU、内存、磁盘、带宽、温度和状态的警报。 + +### 多用户 + +用户管理自己的系统。管理员可以在用户之间共享系统。 + +### OAuth / OIDC + +支持多种 OAuth2 提供程序。可以禁用密码验证。 + +### 自动备份 + +从磁盘或 S3 兼容的存储保存和恢复数据。 + +### REST API + +在您自己的脚本和应用程序中使用或更新您的数据。 + +### 架构 + +Beszel 由两个主要组件组成:中心 (hub) 和 代理 (agent)。 + ++ 中心 (hub): 一个基于 PocketBase 构建的 Web 应用程序,提供用于查看和管理连接系统的仪表板。 ++ 代理 (agent): 在您要监控的每个系统上运行,创建一个最小的 SSH 服务器以将系统指标传递到中心。 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/apps/beszel/data.yml b/apps/beszel/data.yml new file mode 100644 index 00000000..052179e3 --- /dev/null +++ b/apps/beszel/data.yml @@ -0,0 +1,14 @@ +additionalProperties: + key: beszel + name: Beszel Hub + tags: + - WebSite + - Local + shortDescZh: 轻量级的服务器监控平台,包含 Docker 统计信息、历史数据和警报功能 + shortDescEn: A lightweight server monitoring platform with Docker statistics, historical data, and alerting capabilities + type: website + crossVersionUpdate: true + limit: 0 + website: https://beszel.dev/ + github: https://github.com/henrygd/beszel/ + document: https://beszel.dev/ diff --git a/apps/beszel/logo.png b/apps/beszel/logo.png new file mode 100644 index 00000000..24e6e7a7 Binary files /dev/null and b/apps/beszel/logo.png differ