开源 / 自托管

部署与本地运行

从本地 MySQL、Java Server 和三个前端开始运行 DuDu,并了解自托管部署的配置边界。

运行环境

准备 Git、Java 21、Maven 3.9、Docker Compose、Node.js 22.12 或更高版本以及 Corepack / Yarn 4。以下命令从仓库根目录开始;每个前端使用独立终端。Compose 只提供开发用 MySQL,不是整套生产部署。

启动数据库与服务端

git clone https://github.com/Buktal/dudu.git
cd dudu
corepack enable
docker compose -f dudu-server/compose.yaml up -d --wait
cd dudu-server
mvn spring-boot:run

Server 默认监听 8080,Flyway 管理业务表迁移。已有数据目录会被保留;不要为重新体验初始化流程而删除现有数据。

启动管理端与工作台

# 终端一,从仓库根目录执行
cd dudu-admin
yarn install
yarn dev --port 5173 --strictPort

# 终端二,从仓库根目录执行
cd dudu-console
yarn install
yarn dev --port 5174 --strictPort

# 终端三,从仓库根目录执行
cd dudu-desk
yarn install
yarn dev

本地入口分别为 Admin :5173、Console :5174、Desk :1423。开发代理转发 API 至 Server;Desk 同时代理 WebSocket。下一步按接待流程指南创建企业、员工、用户组和渠道账号。

自托管上线边界

Server 使用 jar 与同目录的 .env 配置文件,键名与 application.yaml 一致。必须显式覆盖数据库连接、账号密码和 dudu.auth.jwt-secret(至少 32 字节随机值);遗漏配置会沿用开发默认值。空库首次生成的 admin/admin 仅供本地初始化,公开服务前必须改密。

Console 生产网关需代理 /api;Desk 与 Admin 构建时按各自 README 设置 VITE_API_ORIGIN。部署层需处理实际来源的跨域策略,并为 Desk 保留 WebSocket 升级。公网回调 origin 通过 dudu.channel.callback-base-url 设置,只含协议、主机和可选端口,不含路径或尾部斜杠。

生产数据库需要私网访问、备份与恢复验证。美团适配器要求实际公开 HTTP 80/8080 入口;仅提供 HTTPS 的部署不开放该渠道。完整配置以 Server 部署说明 ↗、Desk README ↗、Admin README ↗ 为准。