Serv00部署匿名会议室(消息、语音、视频共享、会议记录)

小声BB

项目地址:
GitHub - velor2012/anonymous-chat-room: Anonymous Chat Room Power By Livekit And Next.js
在部署【新人向】serv00部署的第一个项目-匿名聊天室 的时候,发现有个佬友在评论中推荐了一款匿名聊天室–推在vercel架設的
因此特意去看了一番,发现这个项目应该和serv00上部署NotionNext是一样一样滴。
于是便产生想法,想在serv00尝试部署部署,毕竟这个不仅支持匿名发消息,还支持语音聊天。这可就太棒了 :woozy_face: 这样和好基友开黑的时候,不会因为游戏抽风而怕登录微信(QQ)语音而被盗号了。同时访问网页也是更加方便的选择~~
经过一番无情地折磨serv00,也是部署成功了~

部署教程如下:point_down:

1、注册Livekit并获取密钥

  • 注册地址:point_right:https://livekit.io/ ,右上角点击 Try LiveKit
  • 输入APP NAMECONTINUE 创建项目(进入后一些选项自己看着选)
  • 点击 :gear:Setting ,选择 KEY 点击 Personal Keys下唯一的一项,弹出 Key generated 并点击 REVEAL SECRET
  • 将这三项(WEBSOCKET URL 、API KEY 、SECRET KEY)全部复制保存下来。
    后面用于环境变量的修改

2、 开启应用权限并开放随机端口

3、创建域名

  • 点击左侧 WWW websites :point_right: 点击 :heavy_plus_sign:Add website
  • 输入你的域名,点击 :small_red_triangle_down:Advanced settings 展开
  • Website type 选择 →Proxy
  • Proxy port 选择我们刚才创建的随机端口

4、进入File manager文件管理

  • 进入创建域名的public_html文件夹,点击Send→From computer上传文件
    (因为serv00使用yarn时会缺失很多构建的文件,我也不知道少哪些,并且在serv00上使用yarn命令也会占用将近1G内存。所以将原项目整体用Debian进行yarn构建打包了,文件140M只能上传网盘给大家下载了,感兴趣的也可以自己打包一下)
    :inbox_tray:夸克下载 :inbox_tray:UC下载 阿里怎么不让我分享???
  • 解压文件
#进入创建域名的`public_html` 文件下
cd domains/这里创建.域名绑定端口.com/public_html

#解压文件
unzip anonymous-chat-room.zip

  • 进入anonymous-chat-room文件夹,右击 .env.local 选择 View/Eidt→Choose other… →Source Eidtor 打开文件
  • 将刚才复制保存的三个密钥 一 一 对应修改环境变量并保存
  • 依然在anonymous-chat-room文件夹下,创建名为 start.sh 的启动(运行)脚本,并粘贴以下文本
#!/bin/bash

# 加载用户环境变量
source ~/.bashrc

# 进入项目目录
cd /usr/home/你的serv00名字/domains/这里创建.域名保绑定端口.com/public_html/anonymous-chat-room

# 设置环境变量
export LIVEKIT_API_KEY=这里填入API KEY
export LIVEKIT_API_SECRET=这里填入SECRET KEY
export LIVEKIT_URL=这里填入WEBSOCKET URL
export NEXT_PUBLIC_LK_TOKEN_ENDPOINT=/api/token

# 启动前验证变量
echo "验证环境变量:"
echo "LIVEKIT_API_KEY: $LIVEKIT_API_KEY"
echo "LIVEKIT_API_SECRET: $LIVEKIT_API_SECRET"
echo "LIVEKIT_URL: $LIVEKIT_URL"
echo "NEXT_PUBLIC_LK_TOKEN_ENDPOINT: $NEXT_PUBLIC_LK_TOKEN_ENDPOINT"


# 启动服务(使用绝对路径)
/usr/local/bin/yarn start -p 刚开的端口

5、赋权 start.sh 启动(运行)脚本

# 进入项目目录
cd domains/这里创建.域名保绑定端口.com/public_html/anonymous-chat-room

# 赋权
chmod +x start.sh

6、运行测试

# 进入项目目录
cd domains/这里创建.域名保绑定端口.com/public_html/anonymous-chat-room

#启动运行脚本 start.sh
./start.sh

可以看到项目启动了开始监听了,这个时候已经可以访问域名了,但是退出SSH会挂断监听。

7、创建Cron Jobs 保活

# 进入项目目录
cd domains/这里创建.域名保绑定端口.com/public_html/anonymous-chat-room

#挂起运行脚本
nohup ./start.sh > /dev/null 2>&1 &

这个时候便不需要SSH面板监听即可正常访问域名了,但是保险起见再创建一个Cron Jobs(不使用nohup命令,直接创建Cron Job也是可以的,稍等片刻即可访问域名)

/usr/home/你的serv00名字/domains/这里创建.域名保绑定端口.com/public_html/anonymous-chat-room/start.sh

至此部署完成,可以愉快的和基友开黑了。
项目上说LiveKit一个月50G流量,用完后会自动关闭,应该也够用了,不够的话只需要去多注册几个账号,然后修改 .env.local和start.sh中的三个Key就行,修改完成后关闭进程重启即可。
这里建议大家有空的可以自行修改好 .env.local 文件的环境变量打包,这样进入房间的速率会更快些,性能表现更好一点。

项目展示图


自行打包

还没有2333333,以后再说

参考资料

详解:在Serv00上搭建NotionNext并保活(next链接已经更新)
https://blog.binbinx.com/article/166da3a2-e97a-80ee-8d07-d05c56ea56fc
GitHub - velor2012/anonymous-chat-room: Anonymous Chat Room Power By Livekit And Next.js
强大的 Deepseek :clown_face:

16 个赞

好先mark一下

2 个赞

感谢分享

2 个赞

感谢分享!

2 个赞

为什么我创建文章后会自带一个AFF的标签,我都没加这个 :flushed:删掉删掉

搞个demo

1 个赞

感谢教程,等下去试试

1 个赞

demo是啥

感谢大佬!

1 个赞

感谢大佬 :tieba_025:

1 个赞

感谢分享。

1 个赞

用来开会专享。。。

1 个赞

嘿嘿,开黑、聊天两开花

mark一下

1 个赞

太强了太强了

感谢科普

nb强啊

感谢大佬分享教程