快速开始#

本指南将帮助你在 5 分钟内启动整个项目。

前置要求#

  • Docker & Docker Compose
  • Git

一键启动(推荐)#

# 克隆项目
git clone https://github.com/yourusername/waterball-interview.git
cd waterball-interview

# 启动所有服务
docker-compose up --build

服务启动后:

  • 前端: http://localhost:3001
  • 后端 API: http://localhost:8080
  • 数据库: localhost:5432

测试账号#

系统会自动创建以下测试账号:

邮箱密码等级经验值
elliot@example.compassword1931,040
ken@example.compassword1829,130
clark@example.compassword1727,260

本地开发(不使用 Docker)#

1. 启动数据库#

docker run --name waterball-db \
  -e POSTGRES_DB=waterball_academy \
  -e POSTGRES_USER=postgres \
  -e POSTGRES_PASSWORD=postgres \
  -p 5432:5432 -d postgres:16-alpine

2. 启动后端#

cd backend

# Windows
gradlew.bat bootRun

# Mac/Linux
./gradlew bootRun

后端将运行在 http://localhost:8080

3. 启动前端#

cd frontend

# 安装依赖
npm install

# 启动开发服务器
npm run dev

前端将运行在 http://localhost:3000

验证安装#

  1. 访问 http://localhost:3001
  2. 点击「登入」
  3. 使用测试账号登录
  4. 浏览课程、排行榜等功能

下一步#

常见问题#

端口被占用#

如果默认端口被占用,修改 docker-compose.yml 中的端口映射:

frontend:
  ports:
    - "3001:3000"  # 改为其他端口,如 "8000:3000"

数据库连接失败#

确认 PostgreSQL 容器正在运行:

docker ps | grep postgres

如果没有运行,重启 docker-compose:

docker-compose down
docker-compose up --build