diff --git a/.github/renovate.json b/.github/renovate.json index d2bf6bb41..02e1042d2 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -30,8 +30,11 @@ "**/rustfs/1.0.0-alpha.86/**" ], "packageRules": [ - { - "matchUpdateTypes": ["patch", "minor"], + { + "matchUpdateTypes": [ + "patch", + "minor" + ], "automerge": true, "automergeType": "pr", "platformAutomerge": true, @@ -39,7 +42,9 @@ "prCreation": "immediate" }, { - "matchUpdateTypes": ["major"], + "matchUpdateTypes": [ + "major" + ], "automerge": false }, { diff --git a/apps/baihu-panel/README.md b/apps/baihu-panel/README.md new file mode 100644 index 000000000..decb90eee --- /dev/null +++ b/apps/baihu-panel/README.md @@ -0,0 +1,70 @@ +# 白虎面板 + +🐯轻量级定时任务管理系统 + +![白虎面板](https://file.lifebus.top/imgs/baihu-panel_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) + +## 安装说明 + +> 默认用户名:admin +> +> 默认密码:首次安装后在日志中打印 12位随机密码 + +## 简介 + +白虎面板 (Baihu Panel) 是一款极致轻量、高性能的自动化任务调度平台。采用 Go + Vue3 架构,专注于高性能与低系统开销。通过深度集成 +Mise 运行时管理,它原生支持 Python、Node.js、Go、Rust、PHP 等所有主流语言环境的动态安装(几乎所有的版本)与统一依赖管理。支持 +Docker/Docker-Compose 一键部署,开箱即用,是您理想的轻量化脚本托管与任务调度解决方案。 + +## 特色 + +### 轻量级 + +docker/compose部署,无需复杂配置,开箱即用 + +### 任务调度 + +支持标准 Cron 表达式,常用时间规则快捷选择。日志不落文件,没有磁盘频繁io的问题 + +### 脚本管理 + +在线代码编辑器,支持文件上传、压缩包解压 + +### 在线终端 + +WebSocket 实时终端,命令执行结果实时输出 + +### 消息推送 + +内置强大消息推送与通知引擎,无缝兼容主流渠道,支持系统级事件告警 + +### 机密管理 + +(New) 类似 GitHub Secrets 的安全存储,支持 AES-GCM 加密,日志自动打码,仅在调度时注入 + +### 环境变量 + +存储普通配置,任务执行时自动注入 + +### 现代UI + +响应式设计,深色/浅色主题切换 + +### 移动端 + +适配移动小屏样式 + +### 远程执行 + +支持远程agent执行任务,展示执行结果 + +### 多语言支持 + +深度集成 Mise,支持几乎所有主流编程语言的动态安装、多版本切换及依赖管理 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) +![Ms Studio](https://analytics.lifebus.top/p/wJix5nI1W) diff --git a/apps/baihu-panel/data.yml b/apps/baihu-panel/data.yml new file mode 100644 index 000000000..bf1939daa --- /dev/null +++ b/apps/baihu-panel/data.yml @@ -0,0 +1,17 @@ +additionalProperties: + key: baihu-panel + name: 白虎面板 + tags: + - WebSite + - Local + shortDescZh: 轻量级定时任务管理系统 + shortDescEn: Lightweight Timed Task Management System + type: website + crossVersionUpdate: true + limit: 0 + website: https://github.com/engigu/baihu-panel/ + github: https://github.com/engigu/baihu-panel/ + document: https://github.com/engigu/baihu-panel/ + architectures: + - amd64 + - arm64 diff --git a/apps/baihu-panel/logo.png b/apps/baihu-panel/logo.png new file mode 100644 index 000000000..1af3b4fea Binary files /dev/null and b/apps/baihu-panel/logo.png differ diff --git a/apps/baihu-panel/logo.svg b/apps/baihu-panel/logo.svg new file mode 100644 index 000000000..e9dac8462 --- /dev/null +++ b/apps/baihu-panel/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/apps/baihu-panel/version/data.yml b/apps/baihu-panel/version/data.yml new file mode 100644 index 000000000..6d9a7fc90 --- /dev/null +++ b/apps/baihu-panel/version/data.yml @@ -0,0 +1,24 @@ +additionalProperties: + formFields: + - default: "/home/baihu-panel" + edit: true + envKey: BAIHU_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: 8052 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number + - default: "" + edit: true + envKey: BH_SECRET + labelZh: 密钥 + labelEn: Secret + required: true + type: text diff --git a/apps/baihu-panel/version/docker-compose.yml b/apps/baihu-panel/version/docker-compose.yml new file mode 100644 index 000000000..dc61f3869 --- /dev/null +++ b/apps/baihu-panel/version/docker-compose.yml @@ -0,0 +1,34 @@ +networks: + 1panel-network: + external: true + +services: + baihu-panel: + image: ghcr.io/engigu/baihu:1.0.43 + container_name: ${CONTAINER_NAME} + labels: + createdBy: "Apps" + restart: always + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:8052 + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${BAIHU_ROOT_PATH}/data:/app/data + - ${BAIHU_ROOT_PATH}/envs:/app/envs + environment: + - TZ=Asia/Shanghai + - BH_SERVER_PORT=8052 + - BH_SERVER_HOST=0.0.0.0 + - BH_DB_TYPE=sqlite + - BH_DB_PATH=/app/data/baihu.db + - BH_DB_TABLE_PREFIX=baihu_ + - BH_DB_NAME=baihu + logging: + driver: json-file + options: + max-size: "10m" + max-file: "3" diff --git a/apps/baihu-panel/version/envs/default.env b/apps/baihu-panel/version/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/apps/baihu-panel/version/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/apps/baihu-panel/version/envs/global.env b/apps/baihu-panel/version/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/apps/baihu-panel/version/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/apps/baihu-panel/version/scripts/init.sh b/apps/baihu-panel/version/scripts/init.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/apps/baihu-panel/version/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/baihu-panel/version/scripts/uninstall.sh b/apps/baihu-panel/version/scripts/uninstall.sh new file mode 100644 index 000000000..c86c4fbca --- /dev/null +++ b/apps/baihu-panel/version/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/baihu-panel/version/scripts/upgrade.sh b/apps/baihu-panel/version/scripts/upgrade.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/apps/baihu-panel/version/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