Skip to content

五分钟跑起来 ​

这篇只做一件事:让你在本地看到一个能说话、能聊天的 GOSpeak。

先装这几个东西 ​

工具版本干什么用的
Go1.26+编译后端
Node.js20+编译前端
pnpm10+装依赖(仓库是 pnpm 工作区)
Docker最新跑 LiveKit 语音服务,没有的话语音功能用不了
gcc任意SQLite 要编译 C 代码,Windows 上装 MinGW

没有 Docker 也能启动,只是进语音频道会失败——文字功能不受影响。

第一步:拿代码、装依赖 ​

bash
git clone https://github.com/NoelOrin/GOSpeak.git
cd GOSpeak
pnpm install

第二步:准备配置文件 ​

bash
cd deploy && ./init.sh && cd ..

打开 deploy/.env,先只改下面几行就够跑起来(本地开发浏览器与后端同机,LIVEKIT_PUBLIC_URL 留空即可):

ini
DB_TYPE="SQLite"
SFU_PROVIDER="livekit"
LIVEKIT_HOST="ws://localhost:7880"
LIVEKIT_KEY="devkey"
LIVEKIT_SECRET="devsecret"

LIVEKIT_KEY / LIVEKIT_SECRET 随便填,但要和下一步 LiveKit 那边的配置一致。

第三步:起语音服务 ​

bash
cd deploy
./init.sh livekit
docker compose up -d

init.sh 会生成 deploy/.env(含随机密钥),compose 会把密钥注入 LiveKit 容器,livekit.yaml 不含任何凭据,所以不需要手动对齐两侧 key。

检查一下有没有起来:

bash
curl -s http://localhost:7880

有响应就说明 LiveKit 在跑了。

第四步:起应用 ​

回仓库根目录:

bash
pnpm dev

这条命令同时起后端和前端。等两个都就绪:

  • 打开 http://localhost:3000 就是界面
  • 后端在 http://localhost:8998
  • 接口文档在 http://localhost:8998/swagger/index.html

第五步:登录进去 ​

首次启动会自动创建管理员账号:

用户名密码
adminadmin123

登录后系统会提示你改密码,改掉就好。

这个默认账号只在库里没有 admin 时创建一次。放到公网前一定要改密码。

第六步:试试语音 ​

  1. 左侧栏点「域」,建一个语音域
  2. 在域里建一个语音频道
  3. 点进频道,浏览器会问麦克风权限,允许
  4. 看到自己的头像亮起来、说话时有绿圈,就通了

想验证多人效果,开一个无痕窗口用另一个账号登进来,进同一个频道。

卡住了看这里 ​

界面白屏 / 接口全 404 后端没起来。看 pnpm dev 的输出里 server 那部分有没有报错,多半是 deploy/.env 里数据库或端口配置有问题。

能登录但进语音频道没声音 LiveKit 没跑或地址配错。先 docker compose ps 看 livekit 容器在不在,再检查 deploy/.env 的 LIVEKIT_PUBLIC_URL 是否为浏览器可达地址(容器部署不能填 ws://livekit:7880)。

端口被占用 后端默认 8998,前端默认 3000。改后端端口用 SERVER_PORT,前端会在 3000 被占时自动顺延到下一个可用端口。

Windows 上编译报 CGO 错误 SQLite 需要 C 编译器。装 MinGW-w64 并把 gcc 加进 PATH。

下一步 ​

基于 Apache 2.0 许可开源