diff --git a/tangsengdaodao/1.0.0/data.yml b/tangsengdaodao/1.0.0/data.yml new file mode 100644 index 000000000..e31e05bfa --- /dev/null +++ b/tangsengdaodao/1.0.0/data.yml @@ -0,0 +1,146 @@ +additionalProperties: + formFields: + - default: "" + envKey: EXTERNAL_IP + labelEn: External IP + labelZh: 外部访问IP + required: true + type: text + - default: "" + envKey: PANEL_DB_HOST + key: mysql + labelEn: Database Service + labelZh: 数据库服务 + required: true + type: service + - default: tsdd + envKey: PANEL_DB_NAME + labelEn: Database + labelZh: 数据库名 + random: true + required: true + rule: paramCommon + type: text + - default: tsdd + envKey: PANEL_DB_USER + labelEn: User + labelZh: 数据库用户 + random: true + required: true + rule: paramCommon + type: text + - default: tsdd@123456 + envKey: PANEL_DB_USER_PASSWORD + labelEn: Password + labelZh: 数据库用户密码 + random: true + required: true + rule: paramComplexity + type: password + - default: "" + edit: true + envKey: TS_DB_REDIS_HOST + key: redis + labelEn: Redis Service + labelZh: 缓存服务服务 + required: true + type: service + - default: 6379 + envKey: TS_DB_REDIS_PORT + labelEn: Redis Port + labelZh: 缓存服务端口 + required: true + type: number + - default: "" + edit: true + envKey: TS_DB_REDISPASS + labelEn: Redis Service Password + labelZh: 缓存服务服务密码 + required: true + rule: paramCommon + type: password + - default: "" + edit: true + envKey: MINIO_HOST + key: minio + labelEn: Minio Service + labelZh: minio对象存储服务 + required: true + type: service + - default: 9000 + envKey: MINIO_PORT + labelEn: minio port + labelZh: minio 端口 + required: true + type: number + - default: minio + envKey: MINIO_ROOT_USER + labelEn: minio + labelZh: minio用户 + random: true + required: true + rule: paramCommon + type: text + - default: 123456 + envKey: MINIO_ROOT_PASSWORD + labelEn: MinioPassword + labelZh: minio用户密码 + random: true + required: true + rule: paramComplexity + type: password + - default: 5100 + envKey: WK_PORT_TCP + labelEn: WuKongIM tcp port + labelZh: 悟空IM TCP端口 + required: true + type: number + - default: 5200 + envKey: WK_PORT_WS + labelEn: WuKongIM ws port + labelZh: 悟空IM WS端口 + required: true + type: number + - default: 5300 + envKey: WK_PORT_WEB_SERVER + labelEn: WuKongIM web port + labelZh: 悟空IM监控端口 + required: true + type: number + - default: 123456 + envKey: TS_SMSCODE + labelEn: SMS + labelZh: 唐僧叨叨短信验证码 + required: true + type: number + - default: superAdmin + disabled: true + envKey: TS_ADMIN + labelEn: Super Admin User + labelZh: 唐僧叨叨超级管理员 + required: true + type: text + - default: tsdd@123456 + envKey: TS_ADMINPWD + labelEn: Admin Password + labelZh: 唐僧叨叨超级管理员默认密码 + required: true + type: text + - default: 8090 + envKey: TS_APP_PORT_HTTP + labelEn: TangSengDaoDao port + labelZh: 唐僧叨叨端口 + required: true + type: number + - default: 82 + envKey: TS_APP_PORT_WEB + labelEn: TangSengDaoDao web port + labelZh: 唐僧叨叨WEB端口 + required: true + type: number + - default: 83 + envKey: TS_APP_PORT_MANAGER + labelEn: TangSengDaoDao Management background port + labelZh: 唐僧叨叨管理后台端口 + required: true + type: number diff --git a/tangsengdaodao/1.0.0/docker-compose.yml b/tangsengdaodao/1.0.0/docker-compose.yml new file mode 100644 index 000000000..d94ab0ad6 --- /dev/null +++ b/tangsengdaodao/1.0.0/docker-compose.yml @@ -0,0 +1,74 @@ +version: '1.0.0' +services: + tsddwukongim: # 唐僧叨叨通讯服务(悟空IM) + image: registry.cn-shanghai.aliyuncs.com/wukongim/wukongim:latest + restart: always + ports: + - "${WK_PORT_TCP}:5100" # tcp长连接端口(外网开放) + - "${WK_PORT_WS}:5200" # websocket端口(外网开放) + - "${WK_PORT_WEB_SERVER}:5300" # 监控端口 + volumes: + - ./wukongim:/root/wukongim + environment: + - WK_MODE=release + - WK_EXTERNAL_IP=${EXTERNAL_IP} + - WK_CONVERSATION_ON=true + - WK_WEBHOOK_GRPCADDR=tangsengdaodaoserver:6979 + - WK_DATASOURCE_ADDR=http://tangsengdaodaoserver:8090/v1/datasource + - WK_DATASOURCE_CHANNELINFOON=true + - WK_TOKENAUTHON=true + networks: + - 1panel-network + tangsengdaodaoserver: # 唐僧叨叨的业务服务 + image: registry.cn-shanghai.aliyuncs.com/wukongim/tangsengdaodaoserver:latest + restart: always + 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 + depends_on: + - tsddwukongim + ports: + - "${TS_APP_PORT_HTTP}:8090" + volumes: + - ./tsdd:/home/tsdddata + # - ./tsdd/configs/tsdd.yaml:/home/configs/tsdd.yaml + environment: + - TS_MODE=release + - TS_WUKONGIM_APIURL=http://tsddwukongim:5001 + - TS_DB_MYSQLADDR=${PANEL_DB_USER}:${PANEL_DB_USER_PASSWORD}@tcp(${PANEL_DB_HOST}:${PANEL_DB_PORT})/${PANEL_DB_NAME}?charset=utf8mb4&parseTime=true&loc=Local + - TS_DB_REDISADDR=${TS_DB_REDIS_HOST}:${TS_DB_REDIS_PORT} + - TS_DB_REDISPASS=${TS_DB_REDISPASS} + - TS_EXTERNAL_IP=${EXTERNAL_IP} + - TS_SMSCODE=${TS_SMSCODE} + - TS_ADMINPWD=${TS_ADMINPWD} + - TS_FILESERVICE=minio + - TS_MINIO_URL=http://${MINIO_HOST}:${MINIO_PORT} + - TS_MINIO_ACCESSKEYID=${MINIO_ROOT_USER} + - TS_MINIO_SECRETACCESSKEY=${MINIO_ROOT_PASSWORD} + - TS_AVATAR_DEFAULTBASEURL=https://api.multiavatar.com/{avatar}.png + networks: + - 1panel-network + tangsengdaodaoweb: # 唐僧叨叨的web服务 + image: registry.cn-shanghai.aliyuncs.com/wukongim/tangsengdaodaoweb:latest + restart: always + environment: + - API_URL=http://${EXTERNAL_IP}:${TS_APP_PORT_HTTP}/ + ports: + - "${TS_APP_PORT_WEB}:80" + networks: + - 1panel-network + tangsengdaodaomanager: # 唐僧叨叨的后台管理系统 + image: registry.cn-shanghai.aliyuncs.com/wukongim/tangsengdaodaomanager:latest + restart: always + environment: + - API_URL=http://${EXTERNAL_IP}:${TS_APP_PORT_HTTP}/ + ports: + - "${TS_APP_PORT_MANAGER}:80" + networks: + - 1panel-network +networks: + 1panel-network: + external: true \ No newline at end of file diff --git a/tangsengdaodao/README.md b/tangsengdaodao/README.md new file mode 100644 index 000000000..22724fd69 --- /dev/null +++ b/tangsengdaodao/README.md @@ -0,0 +1,40 @@ +# 什么是唐僧叨叨 + +**唐僧叨叨**是一款`轻量级`,`高性能`,`重安全`专注于`私有化部署`的`开源`即时通讯系统。 + +## 特性 + +**唐僧叨叨**具备以下特性: + +- 🆓 开源免费:服务端源码,APP源码,Web/PC端源码全部开源,Apache2.0开源协议(可商用),没人能拿捏你 +- 🔏 私有化部署:所有程序和数据都在自己的服务器上,不用担心数据泄露,不用担心数据被用于其他用途 +- 🆚 消息必达:采用 tcp + ack机制,保证消息必达,支持离线消息,支持消息漫游。 +- 🔐 内容安全:消息传输采用私有二进制加密协议、DH+流式加密,防止消息内容泄露 +- 💽 消息永久存储:消息支持永久存储,得益于WuKongIM的自研消息db,永久存储不影响性能,只浪费点磁盘空间 +- 📱 多设备消息同步:支持 1 个移动端、多个 Web/PC 端同时在线时,并且支持多端之间的消息实时同步。 +- 📟 全平台支持:iOS,Android,Windows,MAC,Ubuntu,Web + + +## 为什么选择唐僧叨叨 + +厂商 | Demo二开成本 | Web端同步 | 群人数 | 存储 | 开源 | 私有化部署 +---|--- |--- |--- |--- |--- |--- + | | | | (自研消息数据库加持) | | +网易云信 | Demo简单,很多功能都只是做演示 | 无法同步 | 小于5000 | 30天/免费版 1年/专业版 | 否 | 未知 +融云 | Demo简单,离运营级还有距离 | 消息同步,设置不能同步 | 3000 | 7天 | 否 | 未知 +环信 | Demo超简单,开发成运营级产品成本高 | app与web互踢 | 3000 | 7天(需联系商务) | 否 | 未知 +腾讯云IM | Demo简单,离运营级还有距离 | 大部分能实时同步 | 付费后最多扩展到6000人 | 30天/旗舰版 | 否 | 未知 + +## 唐僧叨叨的组成 + +**客户端** + +主要是用户端使用 包括:[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) diff --git a/tangsengdaodao/data.yml b/tangsengdaodao/data.yml new file mode 100644 index 000000000..df216ba7e --- /dev/null +++ b/tangsengdaodao/data.yml @@ -0,0 +1,20 @@ +name: TangSengDaoDao +tags: + - Tool +title: 让企业轻松拥有自己的即时通讯 +type: 工具 +description: 让企业轻松拥有自己的即时通讯 +additionalProperties: + key: tangsengdaodao + name: TangSengDaoDao + tags: + - Tool + shortDescZh: 让企业轻松拥有自己的即时通讯 + shortDescEn: Make it easy for businesses to have their own instant messaging + type: tool + crossVersionUpdate: true + limit: 0 + recommend: 0 + website: https://tangsengdaodao.com/ + github: https://github.com/TangSengDaoDao/TangSengDaoDaoServer + document: https://tangsengdaodao.com/ diff --git a/tangsengdaodao/logo.png b/tangsengdaodao/logo.png new file mode 100644 index 000000000..2cfe36827 Binary files /dev/null and b/tangsengdaodao/logo.png differ