6.3 开发环境与首次运行

开发环境与首次运行

后端可独立使用已经嵌入的管理端,也可与 Vite 开发服务器并行运行。为避免污染正式数据,开发环境建议使用单独工作目录和 SQLite。

后端开发实例

先构建后端,再从独立工作目录启动,确保安装锁和生成配置不会落入仓库的正式配置目录:

GOWORK=off go build -o .dev-runtime/dwz-server .
mkdir -p .dev-runtime/config .dev-runtime/data .dev-runtime/logs
cd .dev-runtime

HTTP_ADDR=:8081 \
DATABASE_DRIVER=sqlite \
DATABASE_FILEPATH=./config/dwz.db \
CACHE_DRIVER=memory \
ID_GENERATOR_DRIVER=local \
./dwz-server start

首次访问 http://127.0.0.1:8081/ 完成安装。安装向导会写入当前工作目录下的 config/config.yamlconfig/install.lock

管理端开发服务器

cd admin-webui
corepack enable
corepack install
pnpm install --frozen-lockfile
pnpm dev:antd

开发端口默认 5666,应用基路径为 /admin/.env.development 默认 API 地址是 http://127.0.0.1:8080;若后端使用 8081,可创建不提交的 .env.local 覆盖:

VITE_GLOB_API_URL=http://127.0.0.1:8081

推荐日常循环

  1. 修改 DTO、Service 或 DAO,并补充 Go 单元测试。
  2. gofmt 修改过的 Go 文件。
  3. 运行目标包测试,再运行 go test ./...
  4. 修改前端 API 类型和页面,运行 typecheck 与相关单测。
  5. 用隔离实例完成登录、工作区和关键业务回归。

本地配置注意事项

  • config/config.yaml 可能包含数据库密码和 JWT Secret,不应提交。
  • 不要删除正式环境的 install.lock 来重跑安装。
  • 开发静态模板时可把 HTTP_STATIC_MODEHTTP_TEMPLATES_MODE 设为 disk
  • HTTP_MODE=debug 用于 HTTP 开发行为,APP_MODE=debug 控制可读日志格式。

IDE 启动参数

Program 使用仓库根目录,Arguments 设置为:

start

环境变量至少设置隔离端口和 SQLite 文件。若 IDE 自动启用 go.work 但本地没有 ../../open/go-web,设置 GOWORK=off

相关章节:测试与调试运行配置