2.7 KiB
2.7 KiB
手账站开发与运行
访问地址
| 环境 | 手账站 | Django Admin |
|---|---|---|
| 本地开发 | http://localhost:5173 | http://localhost:8963/admin/ |
| Docker | http://localhost:8080 | http://localhost:8963/admin/ |
本地开发(推荐)
前后端各开一个终端。前端 Vite 会把 /api、/media 代理到 http://127.0.0.1:8963,需先启动后端。
后端(Django)
在项目根目录 mwy 下:
cd backend
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
python manage.py migrate
python manage.py runserver 8963
首次使用 Admin 可创建超级用户:
python manage.py createsuperuser
导入示例时间线数据(会清空现有 Memory 记录):
python manage.py seed_nepal_story
前端(Vue + Vite)
另开终端,在项目根目录下:
cd frontend
npm install
npm run dev
浏览器打开 Vite 提示的地址(默认 http://localhost:5173)。
可选:指定 API 地址(一般不必,默认走代理 /api)
# .env 或 .env.local
# VITE_API_BASE_URL=http://127.0.0.1:8963/api
生产构建预览(可选)
cd frontend
npm run build
npm run preview
Docker 一键启动
在项目根目录:
docker compose up --build
数据与媒体挂在 Docker 卷 backend_data(SQLite、media)。
FRP 内网穿透(frpc)
通过 frp 把本机 Docker 里的手账站暴露到公网(需你已有 frps 服务端)。
- 复制环境变量模板并填写 frps 信息:
cp .env.example .env
# 编辑 .env:FRP_SERVER_ADDR、FRP_SERVER_PORT、FRP_TOKEN、FRP_CUSTOM_DOMAIN、FRP_PUBLIC_ORIGIN
- 先启动应用,再启用 frpc(
frpprofile,默认不启动):
docker compose up --build -d
docker compose --profile frp up -d
- 在 frps 上为域名
FRP_CUSTOM_DOMAIN配置 HTTP 入口后,用FRP_PUBLIC_ORIGIN访问手账站;Admin 为{FRP_PUBLIC_ORIGIN 的 host}/admin/需经同一 HTTP 代理(当前穿透的是 frontend:80,已包含/api、/media)。
配置文件:frpc/frpc.toml。无域名时可在该文件中改用 TCP 代理(见文件内注释),并设置 FRP_REMOTE_PORT。
常用命令速查
# 后端目录 backend/ 下,且已激活虚拟环境
python manage.py migrate
python manage.py runserver 8963
python manage.py seed_nepal_story
python manage.py createsuperuser
# 前端目录 frontend/ 下
npm run dev
npm run build