首次运行请先复制并配置环境变量(本地开发推荐 SQLite 模板):
cp backend/.env.local.example backend/.env# 进入 scripts 目录
cd CourseLink\scripts
# 一键启动(自动完成所有准备工作)
start_backend.bat首次运行请先复制并配置环境变量(本地开发推荐 SQLite 模板):
cp backend/.env.local.example backend/.env# 添加执行权限(首次运行)
chmod +x CourseLink/scripts/*.sh
# 进入 scripts 目录
cd CourseLink/scripts
# 一键启动(自动完成所有准备工作)
./start_backend.sh-
检查虚拟环境
- 不存在 → 自动创建
- 已存在 → 继续下一步
-
检查依赖
- 未安装 → 自动安装所有依赖
- 已安装 → 跳过安装
-
检查数据库
- 不存在 → 自动初始化
- 已存在 → 询问是否重新初始化
-
启动服务器
- Uvicorn ASGI 服务器
- http://localhost:8000
$ start_backend.bat
╔════════════════════════════════════════════════════════════╗
║ CourseLink 后端服务器启动脚本 ║
╚════════════════════════════════════════════════════════════╝
项目根目录: C:\Users\xxx\CourseLink
后端目录: C:\Users\xxx\CourseLink\backend
操作系统: Windows 10
============================================================
检查虚拟环境
============================================================
虚拟环境不存在,正在创建...
▶ 创建虚拟环境
完成: 创建虚拟环境
============================================================
检查依赖
============================================================
检测到缺少依赖,正在安装...
▶ 升级 pip
完成: 升级 pip
▶ 安装依赖
完成: 安装依赖
============================================================
检查数据库
============================================================
数据库不存在,正在初始化...
▶ 创建迁移文件
完成: 创建迁移文件
▶ 执行迁移
完成: 执行迁移
============================================================
启动服务器
============================================================
启动后端服务器 (Uvicorn + ASGI)
服务地址: http://localhost:8000
API 端点: http://localhost:8000/api/
管理后台: http://localhost:8000/admin/
提示: 按 Ctrl+C 停止服务器
============================================================
INFO: Will watch for changes in these directories: ['C:\\Users\\xxx\\CourseLink\\backend']
INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
INFO: Started reloader process [12345] using WatchFiles
INFO: Started server process [67890]
INFO: Waiting for application startup.
INFO: Application startup complete.
$ start_backend.bat
╔════════════════════════════════════════════════════════════╗
║ CourseLink 后端服务器启动脚本 ║
╚════════════════════════════════════════════════════════════╝
============================================================
检查虚拟环境
============================================================
虚拟环境已存在: C:\Users\xxx\CourseLink\venv
============================================================
检查依赖
============================================================
依赖已安装
============================================================
检查数据库
============================================================
数据库已存在: C:\Users\xxx\CourseLink\backend\db.sqlite3
是否重新初始化数据库? (y/N): N
============================================================
启动服务器
============================================================
启动后端服务器 (Uvicorn + ASGI)
...
# 方式一: 启动时选择重新初始化
start_backend.bat
# 当提示 "是否重新初始化数据库?" 时输入 y
# 方式二: 运行初始化脚本
init_local_dev.bat # Windows
./init_local_dev.sh # Linux/Mac# Windows
scripts\init_local_dev.bat
# Linux/Mac
./scripts/init_local_dev.sh# 方式一: 初始化时创建
scripts\init_local_dev.bat
# 方式二: 手动创建
venv\Scripts\activate # Windows
source venv/bin/activate # Linux/Mac
cd backend
python manage.py createsuperuser# 按 Ctrl+C启动成功后,可以访问:
- API 根路径: http://localhost:8000/
- API 端点: http://localhost:8000/api/
- 管理后台: http://localhost:8000/admin/
- 用户名: 初始化时创建的超级用户名
- 密码: 初始化时设置的密码
- 首次运行较慢: 需要创建虚拟环境和安装依赖,大约需要 5-10 分钟
- 后续运行很快: 如果环境已就绪,启动只需几秒钟
- 端口占用: 如果 8000 端口被占用,需要先关闭占用该端口的程序
- 网络问题: 安装依赖需要网络连接,国内用户建议使用镜像源
# 下载 Python 3.8+
https://www.python.org/downloads/# Windows
pip install virtualenv
# Linux
sudo apt install python3-venv# 使用国内镜像
pip install -r backend/requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple# Windows
netstat -ano | findstr :8000
taskkill /PID <PID> /F
# Linux/Mac
lsof -i :8000
kill -9 <PID>- 详细文档:
scripts/README.md - 更新日志:
scripts/CHANGELOG.md - Django 文档: https://docs.djangoproject.com/
提示: 如果你只需要快速启动,直接运行 scripts/start_backend.bat 即可!