diff --git a/.github/README.md b/.github/README.md index e6ad1c95..39ae73de 100644 --- a/.github/README.md +++ b/.github/README.md @@ -90,6 +90,7 @@ | 🟢 | | Cookie Cloud | https://github.com/easychen/CookieCloud/ | CookieCloud是一个和自架服务器同步浏览器Cookie和LocalStorage的小工具 | | | 🟢 | | DeepLX | https://deeplx.owo.network/ | DeepL免费API(无需TOKEN) | | | 🟢 | | Dockge | https://dockge.kuma.pet/ | 面向堆栈的管理器 | | +| 🟢 | | Dozzle | https://dozzle.dev/ | 一个轻量级的小应用程序,有一个基于web的界面来监控Docker日志 | | | 🟢 | | 独角数卡 | https://github.com/assimon/dujiaoka/ | 独角数卡(自动售货系统)-开源站长自动化售货解决方案、高效、稳定、快速 | | | 🟢 | | Elasticsearch | https://www.elastic.co/elasticsearch/ | Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎 | Elastic | | 🟢 | | Kibana | https://www.elastic.co/kibana/ | Kibana 针对大规模数据快速运行数据分析 | Elastic | @@ -137,11 +138,13 @@ | 🟢 | | SpeedTest | https://www.speedtest.net/ | 互联网速度测试 | | | 🔴 | | SpeedTest-Tracker | https://docs.speedtest-tracker.dev/ | Speedtest Tracker 是一款自托管互联网性能跟踪应用程序,可针对 Ookla 的 Speedtest 服务运行速度测试检查 | | | 🟢 | | Stream-Rec | https://github.com/hua0512/stream-rec/ | Stream-rec是一个用于各种流媒体服务的自动流媒体录制工具 | | +| 🟢 | | 唐僧叨叨 | https://tsdaodao.com/ | 让企业轻松拥有自己的即时通讯 | | | 🟢 | | Telegram Bot Api | https://telegram.org/ | 自建 Telegram Bot API 服务器 | | | 🟢 | | Transmission | https://transmissionbt.com/ | 快速、简单、免费的 Bittorrent 客户端 | | | 🟢 | | Uptime Kuma | https://uptime.kuma.pet/ | 自托管监控工具 | | | 🟢 | | Umami | https://umami.is/ | 为速度和效率而构建的网站分析 | | | 🟢 | | WiseFlow | https://github.com/TeamWiseFlow/wiseflow/ | Wiseflow 首席情报官 | | +| 🟢 | | 悟空IM | https://githubim.com/ | 让信息传递更简单 | | | 🟢 | | 迅雷 NAS版 | https://github.com/cnk3x/xunlei/ | 迅雷远程下载服务 NAS移植版 | | | 🔴 | | Yarr | https://github.com/nkanaev/yarr | Rss 阅读器 | | | 🔴 | | Ztncui | https://www.zerotier.com/ | 【自建服务端】ZeroTier 可让您构建几乎任何类型的现代化安全多点虚拟化网络 | | diff --git a/README.md b/README.md index 91bbf052..7765df39 100644 --- a/README.md +++ b/README.md @@ -121,6 +121,7 @@ | 🟢 | | SpeedTest | https://www.speedtest.net/ | 互联网速度测试 | | | 🔴 | | SpeedTest-Tracker | https://docs.speedtest-tracker.dev/ | Speedtest Tracker 是一款自托管互联网性能跟踪应用程序,可针对 Ookla 的 Speedtest 服务运行速度测试检查 | | | 🟢 | | Stream-Rec | https://github.com/hua0512/stream-rec/ | Stream-rec是一个用于各种流媒体服务的自动流媒体录制工具 | | +| 🟢 | | 唐僧叨叨 | https://tsdaodao.com/ | 让企业轻松拥有自己的即时通讯 | | | 🟢 | | Telegram Bot Api | https://telegram.org/ | 自建 Telegram Bot API 服务器 | | | 🟢 | | Transmission | https://transmissionbt.com/ | 快速、简单、免费的 Bittorrent 客户端 | | | 🟢 | | Uptime Kuma | https://uptime.kuma.pet/ | 自托管监控工具 | | diff --git a/apps/tangsengdaodao/1.5/data.yml b/apps/tangsengdaodao/1.5/data.yml new file mode 100644 index 00000000..44f756a5 --- /dev/null +++ b/apps/tangsengdaodao/1.5/data.yml @@ -0,0 +1,250 @@ +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/tangsengdaodao" + edit: true + envKey: TANGSENGDAODAO_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: 5100 + edit: true + envKey: PANEL_APP_PORT_WK_TCP + labelZh: TCP 通讯端口 + labelEn: TCP communication port + required: true + type: number + - default: 5200 + edit: true + envKey: PANEL_APP_PORT_WK_WS + labelZh: WebSocket 通讯端口 + labelEn: WebSocket communication port + required: true + type: number + - default: 5300 + edit: true + envKey: PANEL_APP_PORT_WK_WEB_SERVER + labelZh: 悟空IM 后台监控端口 + labelEn: WuKongIM background monitoring port + required: true + type: number + - default: 8090 + edit: true + envKey: PANEL_APP_PORT_TS_APP_HTTP + labelZh: 唐僧叨叨 API 端口 + labelEn: TangSengDaoDao API port + required: true + type: number + - default: 80 + edit: true + envKey: PANEL_APP_PORT_TS_APP_WEB + labelZh: 唐僧叨叨 WEB端口 + labelEn: TangSengDaoDao WEB port + required: true + type: number + - default: 80 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: 唐僧叨叨 后台管理端口 + labelEn: TangSengDaoDao Management background port + required: true + type: number + - default: "" + edit: true + envKey: WK_EXTERNAL_IP + labelEn: External IP + labelZh: 外部访问IP + required: true + type: text + - default: "admin" + edit: true + envKey: TS_ADMIN + labelZh: 超级管理员 账户 + labelEn: Super administrator account + required: true + type: text + - default: "tsdd@123456" + edit: true + envKey: TS_ADMINPWD + labelZh: 超级管理员 密码 + labelEn: Super administrator password + required: true + type: text + - default: "123456" + edit: true + envKey: TS_SMSCODE + labelZh: 默认注册验证码 + labelEn: Default registration verification code + required: true + 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 + type: number + - default: "tsdd" + edit: true + envKey: DB_USERNAME + labelZh: 数据库 用户名 + labelEn: Database Username + required: true + type: text + - default: "tsdd" + edit: true + envKey: DB_PASSWORD + labelEn: Password + labelZh: 数据库 密码 + random: true + required: true + rule: paramComplexity + type: password + - default: "tsdd" + edit: true + envKey: DB_NAME + labelZh: 数据库 名称 + labelEn: Database Name + required: true + type: text + - 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 + type: number + - default: "" + edit: true + envKey: REDIS_PASSWORD + labelZh: Redis 连接密码 + labelEn: Redis Connection Password + required: false + type: password + - default: "127.0.0.1" + edit: true + envKey: MINIO_HOST + labelZh: Minio 主机 + labelEn: Minio Host + required: true + type: text + - default: 9000 + edit: true + envKey: MINIO_PORT + labelZh: Minio 端口 + labelEn: Minio Port + required: true + type: number + - default: "tsdd" + edit: true + envKey: MINIO_USERNAME + labelZh: minio 用户名 + labelEn: Minio Username + required: true + type: text + - default: "tsdd" + edit: true + envKey: MINIO_PASSWORD + labelZh: Minio 密码 + labelEn: Minio Password + required: true + type: password + - default: "https://api.multiavatar.com/{avatar}.png" + edit: true + envKey: TS_AVATAR_DEFAULTBASEURL + labelZh: 默认头像提供地址 + labelEn: Default avatar provider address + required: true + type: text + - default: "唐僧叨叨" + edit: true + envKey: TS_APPNAME + labelZh: 应用名称 + labelEn: Application Name + required: true + type: text + - default: "欢迎使用{{appName}}" + edit: true + envKey: TS_WELCOMEMESSAGE + labelZh: 欢迎消息 + labelEn: Welcome message + required: true + type: text + - default: "true" + edit: true + envKey: TS_PHONESEARCHOFF + labelZh: 手机号搜索功能 + labelEn: Phone number search function + required: true + type: select + values: + - label: 开启 + value: "false" + - label: 关闭 + value: "true" + - default: "true" + edit: true + envKey: TS_ONLINESTATUSON + labelZh: 在线状态功能 + labelEn: Online status function + required: true + type: select + values: + - label: 开启 + value: "true" + - label: 关闭 + value: "false" + - default: 1000 + edit: true + envKey: TS_GROUPUPGRADEWHENMEMBERCOUNT + labelZh: 自动升级超级群组临界值 + labelEn: Automatic upgrade super group critical value + required: true + type: number diff --git a/apps/tangsengdaodao/1.5/docker-compose.yml b/apps/tangsengdaodao/1.5/docker-compose.yml new file mode 100644 index 00000000..0c119c74 --- /dev/null +++ b/apps/tangsengdaodao/1.5/docker-compose.yml @@ -0,0 +1,93 @@ +networks: + 1panel-network: + external: true + +services: + tsdd-wukongim: + image: registry.cn-shanghai.aliyuncs.com/wukongim/wukongim:v1.2 + container_name: ${CONTAINER_NAME} + labels: + createdBy: "Apps" + restart: always + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_WK_TCP}:5100 + - ${PANEL_APP_PORT_WK_WS}:5200 + - ${PANEL_APP_PORT_WK_WEB_SERVER}:5300 + env_file: + - /etc/1panel/envs/global.env + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${TANGSENGDAODAO_ROOT_PATH}/wukongim:/root/wukongim + environment: + - WK_MODE=release + - WK_CONVERSATION_ON=true + - WK_WEBHOOK_GRPCADDR=tsdd-server:6979 + - WK_DATASOURCE_ADDR=http://tsdd-server:8090/v1/datasource + - WK_DATASOURCE_CHANNELINFOON=true + - WK_TOKENAUTHON=true + tsdd-server: + image: registry.cn-shanghai.aliyuncs.com/wukongim/tangsengdaodaoserver:v1.5 + container_name: ${CONTAINER_NAME}-server + labels: + createdBy: "Apps" + restart: always + networks: + - 1panel-network + depends_on: + - tsdd-wukongim + ports: + - ${PANEL_APP_PORT_TS_APP_HTTP}:8090 + env_file: + - /etc/1panel/envs/global.env + - ${ENV_FILE:-/etc/1panel/envs/default.env} + command: "api" + healthcheck: + test: "wget -q -Y off -O /dev/null http://localhost:8090/v1/ping > /dev/null 2>&1" + interval: 10s + timeout: 10s + retries: 3 + volumes: + - ${TANGSENGDAODAO_ROOT_PATH}/tsdd:/home/tsdddata + environment: + - TS_MODE=release + - TS_WUKONGIM_APIURL=http://tsdd-wukongim:5001 + - TS_DB_MYSQLADDR=${DB_USERNAME}:${DB_PASSWORD}@tcp(${DB_HOST}:${DB_PORT})/${DB_NAME}?charset=utf8mb4&parseTime=true&loc=Local + - TS_DB_REDISADDR=${REDIS_HOST}:${REDIS_PORT} + - TS_DB_REDISPASS=${REDIS_PASSWORD} + - TS_EXTERNAL_IP=${WK_EXTERNAL_IP} + - TS_FILESERVICE=minio + - TS_MINIO_URL=http://${MINIO_HOST}:${MINIO_PORT} + - TS_MINIO_ACCESSKEYID=${MINIO_USERNAME} + - TS_MINIO_SECRETACCESSKEY=${MINIO_PASSWORD} + tsdd-web: + image: registry.cn-shanghai.aliyuncs.com/wukongim/tangsengdaodaoweb:latest + container_name: ${CONTAINER_NAME}-web + labels: + createdBy: "Apps" + restart: always + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_TS_APP_WEB}:80 + env_file: + - /etc/1panel/envs/global.env + - ${ENV_FILE:-/etc/1panel/envs/default.env} + environment: + - API_URL=http://${WK_EXTERNAL_IP}:${PANEL_APP_PORT_TS_APP_HTTP}/ + tsdd-manager: + image: registry.cn-shanghai.aliyuncs.com/wukongim/tangsengdaodaomanager:latest + container_name: ${CONTAINER_NAME}-manager + labels: + createdBy: "Apps" + restart: always + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:80 + env_file: + - /etc/1panel/envs/global.env + - ${ENV_FILE:-/etc/1panel/envs/default.env} + environment: + - API_URL=http://${WK_EXTERNAL_IP}:${PANEL_APP_PORT_TS_APP_HTTP}/ diff --git a/apps/tangsengdaodao/1.5/scripts/init.sh b/apps/tangsengdaodao/1.5/scripts/init.sh new file mode 100644 index 00000000..77b84912 --- /dev/null +++ b/apps/tangsengdaodao/1.5/scripts/init.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/tangsengdaodao/1.5/scripts/uninstall.sh b/apps/tangsengdaodao/1.5/scripts/uninstall.sh new file mode 100644 index 00000000..c86c4fbc --- /dev/null +++ b/apps/tangsengdaodao/1.5/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/tangsengdaodao/1.5/scripts/upgrade.sh b/apps/tangsengdaodao/1.5/scripts/upgrade.sh new file mode 100644 index 00000000..77b84912 --- /dev/null +++ b/apps/tangsengdaodao/1.5/scripts/upgrade.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/tangsengdaodao/README.md b/apps/tangsengdaodao/README.md new file mode 100644 index 00000000..5d43da80 --- /dev/null +++ b/apps/tangsengdaodao/README.md @@ -0,0 +1,48 @@ +# 唐僧叨叨 + +**唐僧叨叨**是一款`轻量级`,`高性能`,`重安全`专注于`私有化部署`的`开源`即时通讯系统。 + +![唐僧叨叨](https://file.lifebus.top/imgs/tangsengdaodao_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) + +## 特性 + +🆓 开源免费:服务端源码,APP源码,Web/PC端源码全部开源,Apache2.0开源协议(可商用),没人能拿捏你 + +🔏 私有化部署:所有程序和数据都在自己的服务器上,不用担心数据泄露,不用担心数据被用于其他用途 + +🆚 消息必达:采用 tcp + ack机制,保证消息必达,支持离线消息,支持消息漫游。 + +🔐 内容安全:消息传输采用私有二进制加密协议、DH+流式加密,防止消息内容泄露 + +💽 消息永久存储:消息支持永久存储,得益于WuKongIM的自研消息db,永久存储不影响性能,只浪费点磁盘空间 + +📱 多设备消息同步:支持 1 个移动端、多个 Web/PC 端同时在线时,并且支持多端之间的消息实时同步。 + +📟 全平台支持:iOS,Android,Windows,MAC,Ubuntu,Web + +## 唐僧叨叨 客户端 + +主要是用户端使用 包括: + ++ [iOS](https://github.com/TangSengDaoDao/TangSengDaoDaoiOS) ++ [Android](https://github.com/TangSengDaoDao/TangSengDaoDaoAndroid) ++ [Web](https://github.com/TangSengDaoDao/TangSengDaoDaoWeb) ++ [PC](https://github.com/TangSengDaoDao/TangSengDaoDaoWeb) + +## 唐僧叨叨 服务端 + +给客户端调用的后端系统 包括: + ++ 通讯端([WuKongIM](https://github.com/WuKongIM/WuKongIM)) ++ 业务端([TangSengDaoDaoServer](https://github.com/TangSengDaoDao/TangSengDaoDaoServer)) ++ 管理端([TangSengDaoDaoManager](https://github.com/TangSengDaoDao/TangSengDaoDaoManager)) + +## 安装说明 + +安装服务前,需要准备:`MySQL` `Redis` `Minio` 三大基础服务 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/apps/tangsengdaodao/data.yml b/apps/tangsengdaodao/data.yml new file mode 100644 index 00000000..d8cf0a17 --- /dev/null +++ b/apps/tangsengdaodao/data.yml @@ -0,0 +1,15 @@ +additionalProperties: + key: tangsengdaodao + name: 唐僧叨叨 + tags: + - WebSite + - Tool + - Local + shortDescZh: 让企业轻松拥有自己的即时通讯 + shortDescEn: Make it easy for businesses to have their own instant messaging + type: website + crossVersionUpdate: true + recommend: 0 + website: https://tsdaodao.com/ + github: https://github.com/TangSengDaoDao/TangSengDaoDaoServer/ + document: https://tsdaodao.com/ diff --git a/apps/tangsengdaodao/logo.png b/apps/tangsengdaodao/logo.png new file mode 100644 index 00000000..2cfe3682 Binary files /dev/null and b/apps/tangsengdaodao/logo.png differ diff --git a/apps/wukongim/README.md b/apps/wukongim/README.md index f02164bb..f4082c1b 100644 --- a/apps/wukongim/README.md +++ b/apps/wukongim/README.md @@ -2,7 +2,7 @@ 高性能通用分布式通讯服务,支持聊天应用,消息推送,物联网通讯,音视频信令,直播弹幕,客服系统,AI 通讯,即时社区等场景。 -![WuKongIM](https://file.lifebus.top/imgs/wukongim_cover.jpg) +![WuKongIM](https://file.lifebus.top/imgs/wukongim_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)