基于 WebRTC 的视频聊天项目,支持随机匹配、房间通话和屏幕共享。后端已从 Node.js 迁移为 Rust(Axum WebSocket)。
- 前端:Vue 3 + Vite + Element Plus
- 后端:Rust + Axum(WebSocket 信令)
cd backend
cargo runcd frontend
npm install
npm run devcd frontend
npm install
npm run build产物:frontend/dist
brew install zig
cargo install cargo-zigbuild
rustup target add x86_64-unknown-linux-musl
cd backend
cargo zigbuild --release --target x86_64-unknown-linux-musl产物:backend/target/x86_64-unknown-linux-musl/release/webrtc-backend
scp backend/target/x86_64-unknown-linux-musl/release/webrtc-backend root@<SERVER_IP>:/opt/server/seeStrangers/webrtc-backend
scp -r frontend/dist root@<SERVER_IP>:/opt/server/seeStrangers/frontend/创建 /etc/systemd/system/seestrangers.service:
[Unit]
Description=seeStrangers Rust Backend
After=network.target
[Service]
Type=simple
WorkingDirectory=/opt/server/seeStrangers
ExecStart=/opt/server/seeStrangers/webrtc-backend
Restart=always
RestartSec=3
User=root
[Install]
WantedBy=multi-user.target启动:
chmod +x /opt/server/seeStrangers/webrtc-backend
systemctl daemon-reload
systemctl enable --now seestrangers.service
systemctl restart seestrangers.service
systemctl status seestrangers.service记得配nginx反代
Exec format error:上传了错误平台二进制(例如 Mach-O),Linux 需要 ELF。status=203/EXEC:ExecStart路径不对,或文件不可执行。- WebSocket 失败:检查前端
WS_URL、Nginx Upgrade 头、后端3101是否在运行。