diff --git a/appstore/ani-rss/2.1.0/.env b/appstore/ani-rss/2.1.1/.env similarity index 100% rename from appstore/ani-rss/2.1.0/.env rename to appstore/ani-rss/2.1.1/.env diff --git a/appstore/ani-rss/2.1.0/data.yml b/appstore/ani-rss/2.1.1/data.yml similarity index 100% rename from appstore/ani-rss/2.1.0/data.yml rename to appstore/ani-rss/2.1.1/data.yml diff --git a/appstore/ani-rss/2.1.0/docker-compose.yml b/appstore/ani-rss/2.1.1/docker-compose.yml similarity index 95% rename from appstore/ani-rss/2.1.0/docker-compose.yml rename to appstore/ani-rss/2.1.1/docker-compose.yml index f58ff7f2d..1dd3c04d5 100644 --- a/appstore/ani-rss/2.1.0/docker-compose.yml +++ b/appstore/ani-rss/2.1.1/docker-compose.yml @@ -14,7 +14,7 @@ services: - PORT=7789 - CONFIG=/config - TZ=Asia/Shanghai - image: wushuo894/ani-rss:v2.1.0 + image: wushuo894/ani-rss:v2.1.1 labels: createdBy: Apps networks: diff --git a/appstore/ani-rss/2.1.0/envs/default.env b/appstore/ani-rss/2.1.1/envs/default.env similarity index 100% rename from appstore/ani-rss/2.1.0/envs/default.env rename to appstore/ani-rss/2.1.1/envs/default.env diff --git a/appstore/ani-rss/2.1.0/envs/global.env b/appstore/ani-rss/2.1.1/envs/global.env similarity index 100% rename from appstore/ani-rss/2.1.0/envs/global.env rename to appstore/ani-rss/2.1.1/envs/global.env diff --git a/appstore/ani-rss/2.1.0/scripts/init.sh b/appstore/ani-rss/2.1.1/scripts/init.sh similarity index 100% rename from appstore/ani-rss/2.1.0/scripts/init.sh rename to appstore/ani-rss/2.1.1/scripts/init.sh diff --git a/appstore/ani-rss/2.1.0/scripts/uninstall.sh b/appstore/ani-rss/2.1.1/scripts/uninstall.sh similarity index 100% rename from appstore/ani-rss/2.1.0/scripts/uninstall.sh rename to appstore/ani-rss/2.1.1/scripts/uninstall.sh diff --git a/appstore/ani-rss/2.1.0/scripts/upgrade.sh b/appstore/ani-rss/2.1.1/scripts/upgrade.sh similarity index 100% rename from appstore/ani-rss/2.1.0/scripts/upgrade.sh rename to appstore/ani-rss/2.1.1/scripts/upgrade.sh diff --git a/appstore/astrbot-napcat/4.8.95/.env b/appstore/astrbot-napcat/4.8.95/.env new file mode 100644 index 000000000..55bc6e7ff --- /dev/null +++ b/appstore/astrbot-napcat/4.8.95/.env @@ -0,0 +1,30 @@ +# 数据持久化路径 [必填] +ASTRBOT_ROOT_PATH=/home/astrbot-napcat + +# WebUI 端口 [必填] +PANEL_APP_PORT_HTTP=6185 + +# 企业微信 WebHook [必填] +PANEL_APP_PORT_WECOM=6195 + +# 个人微信 WebHook [必填] +PANEL_APP_PORT_WECHAT=11451 + +# QQ WebHook [必填] +PANEL_APP_PORT_QQ_WH=6199 + +# QQ API [必填] +PANEL_APP_PORT_QQ_API=6196 + +# NapCat 端口 [必填] +PANEL_APP_PORT_NAPCAT=6099 + +# NapCat 容器 MAC 地址 [必填] +NAPCAT_MAC_ADDRESS=02:42:ac:11:00:02 + +# NapCat 容器 UID [必填] +NAPCAT_UID=1000 + +# NapCat 容器 GID [必填] +NAPCAT_GID=1000 + diff --git a/appstore/astrbot-napcat/4.8.95/data.yml b/appstore/astrbot-napcat/4.8.95/data.yml new file mode 100644 index 000000000..1d39da663 --- /dev/null +++ b/appstore/astrbot-napcat/4.8.95/data.yml @@ -0,0 +1,78 @@ +additionalProperties: + formFields: + - default: "/home/astrbot-napcat" + edit: true + envKey: ASTRBOT_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: 6185 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number + - default: 6195 + edit: true + envKey: PANEL_APP_PORT_WECOM + labelZh: 企业微信 WebHook + labelEn: WeCom WebHook + required: true + rule: paramPort + type: number + - default: 11451 + edit: true + envKey: PANEL_APP_PORT_WECHAT + labelZh: 个人微信 WebHook + labelEn: WeChat WebHook + required: true + rule: paramPort + type: number + - default: 6199 + edit: true + envKey: PANEL_APP_PORT_QQ_WH + labelZh: QQ WebHook + labelEn: QQ WebHook + required: true + rule: paramPort + type: number + - default: 6196 + edit: true + envKey: PANEL_APP_PORT_QQ_API + labelZh: QQ API + labelEn: QQ API + required: true + rule: paramPort + type: number + - default: 6099 + edit: true + envKey: PANEL_APP_PORT_NAPCAT + labelZh: NapCat 端口 + labelEn: NapCat port + required: true + rule: paramPort + type: number + - default: "02:42:ac:11:00:02" + edit: true + envKey: NAPCAT_MAC_ADDRESS + labelZh: NapCat 容器 MAC 地址 + labelEn: NapCat container MAC address + required: true + type: text + - default: 1000 + edit: true + envKey: NAPCAT_UID + labelZh: NapCat 容器 UID + labelEn: NapCat container UID + required: true + type: number + - default: 1000 + edit: true + envKey: NAPCAT_GID + labelZh: NapCat 容器 GID + labelEn: NapCat container GID + required: true + type: number diff --git a/appstore/astrbot-napcat/4.8.95/docker-compose.yml b/appstore/astrbot-napcat/4.8.95/docker-compose.yml new file mode 100644 index 000000000..bf187f8c1 --- /dev/null +++ b/appstore/astrbot-napcat/4.8.95/docker-compose.yml @@ -0,0 +1,48 @@ +networks: + 1panel-network: + external: true +services: + astrbot: + container_name: astrbot-napcat + env_file: + - ./envs/global.env + - .env + environment: + - TZ=Asia/Shanghai + image: soulter/astrbot:v3.5.23 + labels: + createdBy: Apps + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:6185 + - ${PANEL_APP_PORT_QQ_WH}:6199 + - ${PANEL_APP_PORT_QQ_API}:6196 + - ${PANEL_APP_PORT_WECOM}:6195 + - ${PANEL_APP_PORT_WECHAT}:11451 + restart: always + volumes: + - /etc/localtime:/etc/localtime:ro + - ${ASTRBOT_ROOT_PATH}/data:/AstrBot/data + - ${ASTRBOT_ROOT_PATH}/ntqq:/app/.config/QQ + - ${ASTRBOT_ROOT_PATH}/napcat/config:/app/napcat/config + napcat: + container_name: napcat-astrbot-napcat + env_file: + - ./envs/global.env + - .env + environment: + - TZ=Asia/Shanghai + - MODE=astrbot + - NAPCAT_UID=${NAPCAT_UID:-1000} + - NAPCAT_GID=${NAPCAT_GID:-1000} + image: mlikiowa/napcat-docker:v4.8.95 + mac_address: ${NAPCAT_MAC_ADDRESS:-02:42:ac:11:00:02} + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_NAPCAT}:6099 + restart: always + volumes: + - ${ASTRBOT_ROOT_PATH}/data:/AstrBot/data + - ${ASTRBOT_ROOT_PATH}/ntqq:/app/.config/QQ diff --git a/appstore/astrbot-napcat/4.8.95/envs/default.env b/appstore/astrbot-napcat/4.8.95/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/appstore/astrbot-napcat/4.8.95/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/appstore/astrbot-napcat/4.8.95/envs/global.env b/appstore/astrbot-napcat/4.8.95/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/appstore/astrbot-napcat/4.8.95/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/appstore/astrbot-napcat/4.8.95/scripts/init.sh b/appstore/astrbot-napcat/4.8.95/scripts/init.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/appstore/astrbot-napcat/4.8.95/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/appstore/astrbot-napcat/4.8.95/scripts/uninstall.sh b/appstore/astrbot-napcat/4.8.95/scripts/uninstall.sh new file mode 100644 index 000000000..c86c4fbca --- /dev/null +++ b/appstore/astrbot-napcat/4.8.95/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/appstore/astrbot-napcat/4.8.95/scripts/upgrade.sh b/appstore/astrbot-napcat/4.8.95/scripts/upgrade.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/appstore/astrbot-napcat/4.8.95/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/appstore/astrbot-napcat/README.md b/appstore/astrbot-napcat/README.md new file mode 100644 index 000000000..63adbe549 --- /dev/null +++ b/appstore/astrbot-napcat/README.md @@ -0,0 +1,46 @@ +# AstrBot (集成NapCat) + +AstrBot 是一个松耦合、异步、支持多消息平台部署、具有易用的插件系统和完善的大语言模型(LLM)接入功能的聊天机器人及开发框架。 + +![AstrBot](https://file.lifebus.top/imgs/astrbot_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) + +## 安装说明 + +> 默认用户名: `astrbot` +> +> 默认密码: `astrbot` + +## 特性 + +### 大语言模型对话 + +支持各种大语言模型,包括 OpenAI API、Google Gemini、Llama、Deepseek、ChatGLM 等,支持接入本地部署的大模型,通过 +Ollama、LLMTuner。具有多轮对话、人格情境、多模态能力,支持图片理解、语音转文字(Whisper)。 + +### 多消息平台接入 + +支持接入 QQ(OneBot、QQ 官方机器人平台)、QQ +频道、企业微信、微信公众号、飞书、Telegram、钉钉、Discord、KOOK、VoceChat。支持速率限制、白名单、关键词过滤、百度内容审核。 + +### Agent + +原生支持部分 Agent 能力,如代码执行器、自然语言待办、网页搜索。对接 Dify 平台,便捷接入 Dify 智能助手、知识库和 Dify +工作流。 + +### 插件扩展 + +深度优化的插件机制,支持开发插件扩展功能,极简开发。已支持安装多个插件。 + +### 可视化管理面板 + +支持可视化修改配置、插件管理、日志查看等功能,降低配置难度。集成 WebChat,可在面板上与大模型对话。 + +### 高稳定性、高模块化 + +基于事件总线和流水线的架构设计,高度模块化,低耦合。 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/appstore/astrbot-napcat/data.yml b/appstore/astrbot-napcat/data.yml new file mode 100644 index 000000000..21a3dc633 --- /dev/null +++ b/appstore/astrbot-napcat/data.yml @@ -0,0 +1,14 @@ +additionalProperties: + key: astrbot-napcat + name: AstrBot (集成NapCat) + tags: + - WebSite + - Local + shortDescZh: 多平台大模型机器人基础设施 + shortDescEn: The Multi-Platform LLM Bot Infrastructure + type: website + crossVersionUpdate: true + limit: 0 + website: https://astrbot.app/ + github: https://github.com/AstrBotDevs/AstrBot/ + document: https://astrbot.app/ diff --git a/appstore/astrbot-napcat/logo.png b/appstore/astrbot-napcat/logo.png new file mode 100644 index 000000000..cf9392030 Binary files /dev/null and b/appstore/astrbot-napcat/logo.png differ diff --git a/appstore/astrbot-napcat/logo.svg b/appstore/astrbot-napcat/logo.svg new file mode 100644 index 000000000..76f1e0e1d --- /dev/null +++ b/appstore/astrbot-napcat/logo.svg @@ -0,0 +1,13 @@ + + 新建项目 + + + + + + + diff --git a/appstore/homarr/1.31.0/.env b/appstore/homarr/1.31.0/.env new file mode 100644 index 000000000..c89cdb369 --- /dev/null +++ b/appstore/homarr/1.31.0/.env @@ -0,0 +1,9 @@ +# 数据持久化路径 [必填] +HOMARR_ROOT_PATH=/home/homarr + +# WebUI 端口 [必填] +PANEL_APP_PORT_HTTP=7575 + +# 密钥 [必填] +SECRET_ENCRYPTION_KEY=7f0f511ce7898929066688ee9146aa509293a6c58a345ea0ea7270e7b34ff32d + diff --git a/appstore/homarr/1.31.0/data.yml b/appstore/homarr/1.31.0/data.yml new file mode 100644 index 000000000..70eecfc7d --- /dev/null +++ b/appstore/homarr/1.31.0/data.yml @@ -0,0 +1,24 @@ +additionalProperties: + formFields: + - default: "/home/homarr" + edit: true + envKey: HOMARR_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: 7575 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number + - default: "7f0f511ce7898929066688ee9146aa509293a6c58a345ea0ea7270e7b34ff32d" + edit: true + envKey: SECRET_ENCRYPTION_KEY + labelZh: 密钥 + labelEn: Secret key + required: true + type: text diff --git a/appstore/homarr/1.31.0/docker-compose.yml b/appstore/homarr/1.31.0/docker-compose.yml new file mode 100644 index 000000000..b21ac42c4 --- /dev/null +++ b/appstore/homarr/1.31.0/docker-compose.yml @@ -0,0 +1,19 @@ +networks: + 1panel-network: + external: true +services: + homarr: + container_name: homarr + env_file: + - ./envs/global.env + - .env + image: ghcr.io/homarr-labs/homarr:v1.31.0 + labels: + createdBy: Apps + network_mode: ${NETWORK_MODE} + ports: + - ${PANEL_APP_PORT_HTTP}:7575 + restart: always + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - ${HOMARR_ROOT_PATH}/appdata:/appdata diff --git a/appstore/homarr/1.31.0/envs/default.env b/appstore/homarr/1.31.0/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/appstore/homarr/1.31.0/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/appstore/homarr/1.31.0/envs/global.env b/appstore/homarr/1.31.0/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/appstore/homarr/1.31.0/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/appstore/homarr/1.31.0/scripts/init.sh b/appstore/homarr/1.31.0/scripts/init.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/appstore/homarr/1.31.0/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/appstore/homarr/1.31.0/scripts/uninstall.sh b/appstore/homarr/1.31.0/scripts/uninstall.sh new file mode 100644 index 000000000..c86c4fbca --- /dev/null +++ b/appstore/homarr/1.31.0/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/appstore/homarr/1.31.0/scripts/upgrade.sh b/appstore/homarr/1.31.0/scripts/upgrade.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/appstore/homarr/1.31.0/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/appstore/shopware/6.7.1.2/docker-compose.yml b/appstore/shopware/6.7.1.2/docker-compose.yml index 9853b06b7..72d149a1d 100644 --- a/appstore/shopware/6.7.1.2/docker-compose.yml +++ b/appstore/shopware/6.7.1.2/docker-compose.yml @@ -26,4 +26,5 @@ services: - ${PANEL_APP_PORT_HTTP}:80 restart: always volumes: - - ${DOCKWARE_ROOT_PATH}/public:/var/www/html/public + - ${DOCKWARE_ROOT_PATH}/mysql:/var/lib/mysql + - ${DOCKWARE_ROOT_PATH}/html:/var/www/html diff --git a/appstore/wechatpadpro/18.6/.env b/appstore/wechatpadpro/18.6/.env new file mode 100644 index 000000000..83a4578b0 --- /dev/null +++ b/appstore/wechatpadpro/18.6/.env @@ -0,0 +1,51 @@ +# MySQL 服务 (前置检查) [必填] +PANEL_DB_TYPE=mysql + +# Redis 服务 (前置检查) [必填] +PANEL_REDIS_TYPE=redis + +# 数据持久化路径 [必填] +WECHATPADPRO_ROOT_PATH=/home/wechatpadpro + +# WebUI 端口 [必填] +PANEL_APP_PORT_HTTP=1238 + +# 微信 API 端口 [必填] +PANEL_APP_PORT_WECHAT=8080 + +# 数据库 主机 [必填] +DB_HOST=127.0.0.1 + +# 数据库 端口 [必填] +DB_PORT=3306 + +# 数据库 名称 [必填] +DB_DATABASE=wechatpadpro + +# 数据库 用户名 [必填] +DB_USERNAME=wechatpadpro + +# 数据库 密码 [必填] +DB_PASSWORD= + +# Redis 主机 [必填] +REDIS_HOST=127.0.0.1 + +# Redis 端口 [必填] +REDIS_PORT=6379 + +# Redis 索引 (0-20) [必填] +REDIS_DB=0 + +# Redis 密码 +REDIS_PASSWORD= + +# 管理员密钥 [必填] +ADMIN_KEY= + +# 推广公众号微信ID +GH_WXID= + +# API 版本前缀 +API_VERSION= + diff --git a/appstore/wechatpadpro/18.6/data.yml b/appstore/wechatpadpro/18.6/data.yml new file mode 100644 index 000000000..1e39d08c2 --- /dev/null +++ b/appstore/wechatpadpro/18.6/data.yml @@ -0,0 +1,144 @@ +additionalProperties: + formFields: + - child: + default: "" + envKey: PANEL_DB_HOST + required: true + type: service + default: mysql + edit: true + envKey: PANEL_DB_TYPE + labelZh: MySQL 服务 (前置检查) + labelEn: Database Service (Pre-check) + required: true + type: apps + values: + - label: MySQL + value: mysql + - label: MariaDB + value: mariadb + - label: Percona + value: percona + - child: + default: "" + envKey: PANEL_REDIS_SERVICE + required: true + type: service + default: redis + envKey: PANEL_REDIS_TYPE + labelZh: Redis 服务 (前置检查) + labelEn: Redis Service (Pre-check) + required: true + type: apps + values: + - label: Redis + value: redis + - default: "/home/wechatpadpro" + edit: true + envKey: WECHATPADPRO_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: 1238 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number + - default: 8080 + edit: true + envKey: PANEL_APP_PORT_WECHAT + labelZh: 微信 API 端口 + labelEn: WeChat API port + required: true + rule: paramPort + type: number + - default: "127.0.0.1" + edit: true + envKey: DB_HOST + labelZh: 数据库 主机 + labelEn: Database Host + required: true + type: text + - default: 3306 + edit: true + envKey: DB_PORT + labelZh: 数据库 端口 + labelEn: Database Port + required: true + rule: paramPort + type: number + - default: "wechatpadpro" + edit: true + envKey: DB_DATABASE + labelZh: 数据库 名称 + labelEn: Database Name + required: true + type: text + - default: "wechatpadpro" + edit: true + envKey: DB_USERNAME + labelZh: 数据库 用户名 + labelEn: Database Username + required: true + type: text + - default: "" + edit: true + envKey: DB_PASSWORD + labelZh: 数据库 密码 + labelEn: Database Password + required: true + type: password + - default: "127.0.0.1" + edit: true + envKey: REDIS_HOST + labelZh: Redis 主机 + labelEn: Redis Host + required: true + type: text + - default: 6379 + edit: true + envKey: REDIS_PORT + labelZh: Redis 端口 + labelEn: Redis Port + required: true + rule: paramPort + type: number + - default: 0 + edit: true + envKey: REDIS_DB + labelZh: Redis 索引 (0-20) + labelEn: Redis Index (0-20) + required: true + type: number + - default: "" + edit: true + envKey: REDIS_PASSWORD + labelZh: Redis 密码 + labelEn: Redis Password + required: false + type: password + - default: "" + edit: true + envKey: ADMIN_KEY + labelZh: 管理员密钥 + labelEn: Admin Key + required: true + type: text + - default: "" + edit: true + envKey: GH_WXID + labelZh: 推广公众号微信ID + labelEn: Promotion WeChat ID + required: false + type: text + - default: "" + edit: true + envKey: API_VERSION + labelZh: API 版本前缀 + labelEn: API Version Prefix + required: false + type: text diff --git a/appstore/wechatpadpro/18.6/docker-compose.yml b/appstore/wechatpadpro/18.6/docker-compose.yml new file mode 100644 index 000000000..afa7e832e --- /dev/null +++ b/appstore/wechatpadpro/18.6/docker-compose.yml @@ -0,0 +1,49 @@ +networks: + 1panel-network: + external: true +services: + wechatpadpro: + container_name: wechatpadpro + env_file: + - ./envs/global.env + - .env + environment: + - TZ=Asia/Shanghai + - WECHAT_PORT=${PANEL_APP_PORT_WECHAT} + - PORT=${PANEL_APP_PORT_HTTP} + - DEBUG=false + - HOST=0.0.0.0 + - MCP_PORT=8099 + - REDIS_MAX_IDLE=30 + - REDIS_MAX_ACTIVE=100 + - REDIS_IDLE_TIMEOUT=5000 + - REDIS_MAX_CONN_LIFETIME=3600 + - REDIS_CONNECT_TIMEOUT=5000 + - REDIS_READ_TIMEOUT=10000 + - REDIS_WRITE_TIMEOUT=10000 + - WORKER_POOL_SIZE=500 + - MAX_WORKER_TASK_LEN=1000 + - WEB_DOMAIN=localhost:1238 + - WEB_TASK_NAME= + - WEB_TASK_APP_NUMBER= + - NEWS_SYN_WXID=true + - DT=true + - MYSQL_HOST=${DB_HOST} + - MYSQL_PORT=${DB_PORT} + - MYSQL_USER=${DB_USERNAME} + - MYSQL_PASSWORD=${DB_PASSWORD} + - MYSQL_DATABASE=${DB_DATABASE} + - MYSQL_CONNECT_STR=${DB_USERNAME}:${DB_PASSWORD}@tcp(${DB_HOST}:${DB_PORT})/${DB_DATABASE}?charset=utf8mb4&parseTime=true&loc=Local + - REDIS_PASS=${REDIS_PASSWORD} + image: wechatpadpro/wechatpadpro:v18.6 + labels: + createdBy: Apps + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:${PANEL_APP_PORT_HTTP} + - ${PANEL_APP_PORT_WECHAT}:${PANEL_APP_PORT_WECHAT} + restart: always + volumes: + - ${WECHATPADPRO_ROOT_PATH}/.env:/app/.env + - ${WECHATPADPRO_ROOT_PATH}/config:/app/config diff --git a/appstore/wechatpadpro/18.6/envs/default.env b/appstore/wechatpadpro/18.6/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/appstore/wechatpadpro/18.6/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/appstore/wechatpadpro/18.6/envs/global.env b/appstore/wechatpadpro/18.6/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/appstore/wechatpadpro/18.6/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/appstore/wechatpadpro/18.6/scripts/init.sh b/appstore/wechatpadpro/18.6/scripts/init.sh new file mode 100644 index 000000000..a1a79637f --- /dev/null +++ b/appstore/wechatpadpro/18.6/scripts/init.sh @@ -0,0 +1,23 @@ +#!/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 + + mkdir -p "$WECHATPADPRO_ROOT_PATH" + + # WECHATPADPRO_ROOT_PATH/.env 创建空文件 + touch "$WECHATPADPRO_ROOT_PATH/.env" + + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/appstore/wechatpadpro/18.6/scripts/uninstall.sh b/appstore/wechatpadpro/18.6/scripts/uninstall.sh new file mode 100644 index 000000000..c86c4fbca --- /dev/null +++ b/appstore/wechatpadpro/18.6/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/appstore/wechatpadpro/18.6/scripts/upgrade.sh b/appstore/wechatpadpro/18.6/scripts/upgrade.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/appstore/wechatpadpro/18.6/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/appstore/wechatpadpro/README.md b/appstore/wechatpadpro/README.md new file mode 100644 index 000000000..b73b4c0a3 --- /dev/null +++ b/appstore/wechatpadpro/README.md @@ -0,0 +1,147 @@ +# WeChatPadPro + +基於 WeChat Pad 協議的高級管理工具v861 + +![WeChatPadPro](https://file.lifebus.top/imgs/wechatpadpro_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) + +## 简介 + +### 🌟 主要特點 + +#### 🛡️ 安全可靠 + +採用最新的 WeChat Pad 協議,確保帳號安全 + +#### 🔄 自動化處理 + +支援訊息自動回覆、群管理等自動化操作 + +#### 🎯 精準控制 + +提供細粒度的功能控制和配置選項 + +#### 🔌 擴展性強 + +支援外掛系統,可自定義擴展功能 + +#### 📊 資料同步 + +支援多裝置資料同步,確保資訊統一 + +### 🎯 適用場景 + +#### 👥 個人用戶 + +訊息管理、自動回覆、防撤回等 + +#### 🏢 企業用戶 + +客戶管理、批量操作、資料分析等 + +#### 🤖 開發者 + +二次開發、功能擴展、自動化整合等 + +## 功能特性 + +WeChatPadPro 是基於 WeChat Pad 協議的高級 WeChat 管理工具,支援以下功能: + +> 🔐 微信登录验证码API功能 ⭐ 重点功能 + +### 多种登录方式支持 + +✅ 二维码登录 - 支持获取登录二维码,绕过验证码流程 +✅ 验证码登录 - 自动处理验证码提交,无需手动获取ticket +✅ 短信登录 - 支持短信验证码登录方式 +✅ 设备登录 - 支持A16数据登录和设备ID登录 + +### 自动验证码处理 + +✅ 自动获取ticket - 系统自动从Redis或状态缓存中获取ticket +✅ 自动生成data62 - 如果data62为空,系统会自动根据设备信息生成 +✅ 多重数据源 - 从Redis、状态缓存、用户信息、连接管理器等多个来源获取ticket +✅ 智能参数验证 - 自动检查必要参数,提供友好错误提示 + +### 实时状态检测 + +✅ 登录状态监控 - 实时检测扫码状态和登录进度 +✅ 验证码状态跟踪 - 自动识别是否需要验证码 +✅ 连接健康检查 - 实时监控连接状态,自动检测连接健康度 +✅ 心跳监控 - 增加心跳时间记录,超过10秒无心跳认为连接不健康 + +### RabbitMQ消息队列支持 + +✅ 智能重连机制 - 只在连接确实断开时才重连,避免频繁重连 +✅ 连接健康检查 - 实时监控连接状态,自动检测连接健康度 +✅ 并发安全 - 使用互斥锁确保重连过程的线程安全 +✅ 消息持久化 - 确保消息在服务器重启后不丢失 + +### 多账号管理 + +✅ 多账号并行 - 支持同时管理多个微信账号 +✅ 账号隔离 - 每个账号独立运行,互不影响 +✅ 统一管理 - 通过统一接口管理所有账号状态 + +### 自动Token刷新 + +✅ 自动刷新 - 系统自动检测并刷新过期的Token +✅ 无缝切换 - Token刷新过程中不影响正常使用 +✅ 状态同步 - 刷新后自动同步所有相关状态 + +### 🔄 API接口列表 + +#### 登录相关接口 + +> 获取微信登录二维码(绕过验证码) +> +> POST `/api/login/qr/newx` + +> 自动处理验证码提交 +> +> POST `/api/login/AutoVerificationcode` + +> 检测扫码登录状态 +> +> GET `/api/login/CheckLoginStatus` + +> 自动处理验证码(推荐) +> +> POST `/api/login/verify/auto` + +> 手动处理验证码 +> +> POST `/api/login/verify/manual` + +#### 状态检测接口 + +> 获取在线状态 +> +> GET `/api/login/GetLoginStatus` + +> 初始化状态 +> +> GET `/api/login/GetInItStatus` + +> 检测微信登录环境 +> +> GET `/api/login/CheckCanSetAlias` + +#### 设备管理接口 + +> 设备登录 +> +> POST `/api/login/DeviceLogin` + +> A16数据登录 +> +> POST `/api/login/A16Login` + +> 短信登录 +> +> POST `/api/login/SmsLogin` + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/appstore/wechatpadpro/data.yml b/appstore/wechatpadpro/data.yml new file mode 100644 index 000000000..c9fac6c92 --- /dev/null +++ b/appstore/wechatpadpro/data.yml @@ -0,0 +1,14 @@ +additionalProperties: + key: wechatpadpro + name: WeChatPadPro + tags: + - WebSite + - Local + shortDescZh: 基于 WeChat Pad 的高级微信管理工具 + shortDescEn: A high-level WeChat management tool based on WeChat Pad + type: website + crossVersionUpdate: true + limit: 0 + website: https://github.com/WeChatPadPro/WeChatPadPro/ + github: https://github.com/WeChatPadPro/WeChatPadPro/ + document: https://github.com/WeChatPadPro/WeChatPadPro/ diff --git a/appstore/wechatpadpro/logo.png b/appstore/wechatpadpro/logo.png new file mode 100644 index 000000000..f70d4a7c7 Binary files /dev/null and b/appstore/wechatpadpro/logo.png differ diff --git a/dockge/ani-rss/docker-compose.yml b/dockge/ani-rss/docker-compose.yml index f58ff7f2d..1dd3c04d5 100644 --- a/dockge/ani-rss/docker-compose.yml +++ b/dockge/ani-rss/docker-compose.yml @@ -14,7 +14,7 @@ services: - PORT=7789 - CONFIG=/config - TZ=Asia/Shanghai - image: wushuo894/ani-rss:v2.1.0 + image: wushuo894/ani-rss:v2.1.1 labels: createdBy: Apps networks: diff --git a/dockge/astrbot-napcat/.env b/dockge/astrbot-napcat/.env new file mode 100644 index 000000000..55bc6e7ff --- /dev/null +++ b/dockge/astrbot-napcat/.env @@ -0,0 +1,30 @@ +# 数据持久化路径 [必填] +ASTRBOT_ROOT_PATH=/home/astrbot-napcat + +# WebUI 端口 [必填] +PANEL_APP_PORT_HTTP=6185 + +# 企业微信 WebHook [必填] +PANEL_APP_PORT_WECOM=6195 + +# 个人微信 WebHook [必填] +PANEL_APP_PORT_WECHAT=11451 + +# QQ WebHook [必填] +PANEL_APP_PORT_QQ_WH=6199 + +# QQ API [必填] +PANEL_APP_PORT_QQ_API=6196 + +# NapCat 端口 [必填] +PANEL_APP_PORT_NAPCAT=6099 + +# NapCat 容器 MAC 地址 [必填] +NAPCAT_MAC_ADDRESS=02:42:ac:11:00:02 + +# NapCat 容器 UID [必填] +NAPCAT_UID=1000 + +# NapCat 容器 GID [必填] +NAPCAT_GID=1000 + diff --git a/dockge/astrbot-napcat/docker-compose.yml b/dockge/astrbot-napcat/docker-compose.yml new file mode 100644 index 000000000..bf187f8c1 --- /dev/null +++ b/dockge/astrbot-napcat/docker-compose.yml @@ -0,0 +1,48 @@ +networks: + 1panel-network: + external: true +services: + astrbot: + container_name: astrbot-napcat + env_file: + - ./envs/global.env + - .env + environment: + - TZ=Asia/Shanghai + image: soulter/astrbot:v3.5.23 + labels: + createdBy: Apps + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:6185 + - ${PANEL_APP_PORT_QQ_WH}:6199 + - ${PANEL_APP_PORT_QQ_API}:6196 + - ${PANEL_APP_PORT_WECOM}:6195 + - ${PANEL_APP_PORT_WECHAT}:11451 + restart: always + volumes: + - /etc/localtime:/etc/localtime:ro + - ${ASTRBOT_ROOT_PATH}/data:/AstrBot/data + - ${ASTRBOT_ROOT_PATH}/ntqq:/app/.config/QQ + - ${ASTRBOT_ROOT_PATH}/napcat/config:/app/napcat/config + napcat: + container_name: napcat-astrbot-napcat + env_file: + - ./envs/global.env + - .env + environment: + - TZ=Asia/Shanghai + - MODE=astrbot + - NAPCAT_UID=${NAPCAT_UID:-1000} + - NAPCAT_GID=${NAPCAT_GID:-1000} + image: mlikiowa/napcat-docker:v4.8.95 + mac_address: ${NAPCAT_MAC_ADDRESS:-02:42:ac:11:00:02} + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_NAPCAT}:6099 + restart: always + volumes: + - ${ASTRBOT_ROOT_PATH}/data:/AstrBot/data + - ${ASTRBOT_ROOT_PATH}/ntqq:/app/.config/QQ diff --git a/dockge/astrbot-napcat/envs/default.env b/dockge/astrbot-napcat/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/dockge/astrbot-napcat/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/dockge/astrbot-napcat/envs/global.env b/dockge/astrbot-napcat/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/dockge/astrbot-napcat/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/dockge/homarr_1_31_0/.env b/dockge/homarr_1_31_0/.env new file mode 100644 index 000000000..c89cdb369 --- /dev/null +++ b/dockge/homarr_1_31_0/.env @@ -0,0 +1,9 @@ +# 数据持久化路径 [必填] +HOMARR_ROOT_PATH=/home/homarr + +# WebUI 端口 [必填] +PANEL_APP_PORT_HTTP=7575 + +# 密钥 [必填] +SECRET_ENCRYPTION_KEY=7f0f511ce7898929066688ee9146aa509293a6c58a345ea0ea7270e7b34ff32d + diff --git a/dockge/homarr_1_31_0/docker-compose.yml b/dockge/homarr_1_31_0/docker-compose.yml new file mode 100644 index 000000000..b21ac42c4 --- /dev/null +++ b/dockge/homarr_1_31_0/docker-compose.yml @@ -0,0 +1,19 @@ +networks: + 1panel-network: + external: true +services: + homarr: + container_name: homarr + env_file: + - ./envs/global.env + - .env + image: ghcr.io/homarr-labs/homarr:v1.31.0 + labels: + createdBy: Apps + network_mode: ${NETWORK_MODE} + ports: + - ${PANEL_APP_PORT_HTTP}:7575 + restart: always + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - ${HOMARR_ROOT_PATH}/appdata:/appdata diff --git a/dockge/homarr_1_31_0/envs/default.env b/dockge/homarr_1_31_0/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/dockge/homarr_1_31_0/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/dockge/homarr_1_31_0/envs/global.env b/dockge/homarr_1_31_0/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/dockge/homarr_1_31_0/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/dockge/shopware/docker-compose.yml b/dockge/shopware/docker-compose.yml index 9853b06b7..72d149a1d 100644 --- a/dockge/shopware/docker-compose.yml +++ b/dockge/shopware/docker-compose.yml @@ -26,4 +26,5 @@ services: - ${PANEL_APP_PORT_HTTP}:80 restart: always volumes: - - ${DOCKWARE_ROOT_PATH}/public:/var/www/html/public + - ${DOCKWARE_ROOT_PATH}/mysql:/var/lib/mysql + - ${DOCKWARE_ROOT_PATH}/html:/var/www/html diff --git a/dockge/wechatpadpro/.env b/dockge/wechatpadpro/.env new file mode 100644 index 000000000..83a4578b0 --- /dev/null +++ b/dockge/wechatpadpro/.env @@ -0,0 +1,51 @@ +# MySQL 服务 (前置检查) [必填] +PANEL_DB_TYPE=mysql + +# Redis 服务 (前置检查) [必填] +PANEL_REDIS_TYPE=redis + +# 数据持久化路径 [必填] +WECHATPADPRO_ROOT_PATH=/home/wechatpadpro + +# WebUI 端口 [必填] +PANEL_APP_PORT_HTTP=1238 + +# 微信 API 端口 [必填] +PANEL_APP_PORT_WECHAT=8080 + +# 数据库 主机 [必填] +DB_HOST=127.0.0.1 + +# 数据库 端口 [必填] +DB_PORT=3306 + +# 数据库 名称 [必填] +DB_DATABASE=wechatpadpro + +# 数据库 用户名 [必填] +DB_USERNAME=wechatpadpro + +# 数据库 密码 [必填] +DB_PASSWORD= + +# Redis 主机 [必填] +REDIS_HOST=127.0.0.1 + +# Redis 端口 [必填] +REDIS_PORT=6379 + +# Redis 索引 (0-20) [必填] +REDIS_DB=0 + +# Redis 密码 +REDIS_PASSWORD= + +# 管理员密钥 [必填] +ADMIN_KEY= + +# 推广公众号微信ID +GH_WXID= + +# API 版本前缀 +API_VERSION= + diff --git a/dockge/wechatpadpro/docker-compose.yml b/dockge/wechatpadpro/docker-compose.yml new file mode 100644 index 000000000..afa7e832e --- /dev/null +++ b/dockge/wechatpadpro/docker-compose.yml @@ -0,0 +1,49 @@ +networks: + 1panel-network: + external: true +services: + wechatpadpro: + container_name: wechatpadpro + env_file: + - ./envs/global.env + - .env + environment: + - TZ=Asia/Shanghai + - WECHAT_PORT=${PANEL_APP_PORT_WECHAT} + - PORT=${PANEL_APP_PORT_HTTP} + - DEBUG=false + - HOST=0.0.0.0 + - MCP_PORT=8099 + - REDIS_MAX_IDLE=30 + - REDIS_MAX_ACTIVE=100 + - REDIS_IDLE_TIMEOUT=5000 + - REDIS_MAX_CONN_LIFETIME=3600 + - REDIS_CONNECT_TIMEOUT=5000 + - REDIS_READ_TIMEOUT=10000 + - REDIS_WRITE_TIMEOUT=10000 + - WORKER_POOL_SIZE=500 + - MAX_WORKER_TASK_LEN=1000 + - WEB_DOMAIN=localhost:1238 + - WEB_TASK_NAME= + - WEB_TASK_APP_NUMBER= + - NEWS_SYN_WXID=true + - DT=true + - MYSQL_HOST=${DB_HOST} + - MYSQL_PORT=${DB_PORT} + - MYSQL_USER=${DB_USERNAME} + - MYSQL_PASSWORD=${DB_PASSWORD} + - MYSQL_DATABASE=${DB_DATABASE} + - MYSQL_CONNECT_STR=${DB_USERNAME}:${DB_PASSWORD}@tcp(${DB_HOST}:${DB_PORT})/${DB_DATABASE}?charset=utf8mb4&parseTime=true&loc=Local + - REDIS_PASS=${REDIS_PASSWORD} + image: wechatpadpro/wechatpadpro:v18.6 + labels: + createdBy: Apps + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:${PANEL_APP_PORT_HTTP} + - ${PANEL_APP_PORT_WECHAT}:${PANEL_APP_PORT_WECHAT} + restart: always + volumes: + - ${WECHATPADPRO_ROOT_PATH}/.env:/app/.env + - ${WECHATPADPRO_ROOT_PATH}/config:/app/config diff --git a/dockge/wechatpadpro/envs/default.env b/dockge/wechatpadpro/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/dockge/wechatpadpro/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/dockge/wechatpadpro/envs/global.env b/dockge/wechatpadpro/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/dockge/wechatpadpro/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai