技术分享
💻太华丽!一款个人云社交媒体聊天服务搭建部署实践
00 分钟
2024-1-24
2024-1-24
type
status
date
slug
summary
tags
category
icon
password

VoceChat介绍

VoceChat 是一款支持独立部署的个人云社交媒体聊天服务。15MB 的大小可部署在任何的服务器上,部署简单,很少需要维护。前端可以内嵌到自己的网站下,数据完全由用户自己掌握,传输过程加密。VoceChat 从 SlackDiscordRocketChatSolidMatrix 等产品和规范中博采众长,适用于团队内部交流,个人聊天服务,网站客服,网站内嵌社区的场景。
我们认为 Web 3.0 去中心化的第一步是基于个人云的去平台化,通过个性化的计算与个性化的存储,让个人和组织拥有自己的平台,所以 VoceChat 的定位是能轻易部署在私有云上的社交协作程序。
团队国际化,远程合作,贡献者来自中、美、巴西等地区, VoceChat 是一个开放的、赋能用户的产品,欢迎大家点 star 关注,提 issues,或者以其他形式参与贡献。
notion image

项目组成:

名称
技术
项目
License
说明
服务端:
Rust
vocechat-server(暂未开源)
待定
聊天服务端,支持主流平台: Linux x86_64, Windows 32/64, Arm32, Arch64
客户端:
Flutter
Apache-2.0
聊天客户端,支持 Android, iOS 平台的客户端
Web:
React
GPL-3.0
聊天功能的浏览器版本,整合了管理
Web-SDK:
React
vocechat-web-sdk(暂未开源)
GPL-3.0
可以整合到其他 Web 产品中,使其赋能聊天功能

功能列表 & 计划

群聊、私聊 / 2021-Q4
引用, at / 2021-Q4
图片、大文件传输 / 2021-Q4
置顶 / 2022-Q1
转发 / 2022-Q1
收藏 / 2022-Q1
阅后即焚(高级功能) / 2022-Q1
语音(高级功能)/ 2022-Q4
视频(高级功能)/ 2022-Q4
 

服务器部署

运行 VoceChat

提示
  • v /app/vocechat-server/data:/home/vocechat-server/data目的是将docker内的数据映射出来,作用是后续vocechat-server升级同时保留已有数据,~/.vocechat-server/data只是举例,可自行定义。
  • network.frontend_url用于生成邀请链接,发送邀请邮件等场景,为可选参数,是个带网络协议的域名,所以不要忘了根据实际情况加协议http(s)。如果部署时未指定,也可在初始化Server流程时设置。

配置 Nginx http 反向代理

在 Nginx 配置文件目录(一般在/etc/nginx/conf.d)新建 Nginx 配置文件vocechat.yourdomain.com.conf,并配置好 http 请求:
检查配置文件的语法:nginx -t,没问题后,启用新增配置:nginx -s reload。此时,浏览器访问http://vocechat.yourdomain.com,能够进入初始化页面,即为配置成功。
提示
不要忘记设置域名解析

配置 https

基本原理:让 Nginx 监听 443 端口,证书配置在 Nginx,通过 host 转发给 vocechat-server:3009,此时 vocechat-server 接受的依旧是 http。
启用 https 有多种方式,此处我们推荐使用certbot,借助 certbot 可以自动生成证书并自动添加到对应域名的 Nginx 配置文件,完成 https 的启用。
 

访问首页

notion image
 

服务器命名

notion image
 

创建管理员账号

notion image
 

邀请他人

notion image
 

完成

notion image
 

创建频道

notion image
notion image
 

邀请朋友

邀请链接:
notion image