快速开始
本指南帮助您在 5 分钟内 完成后端服务 youlai-gin(Go/Gin)的启动和验证。
前置条件
必需环境:
| 环境 | 版本要求 | 下载地址 |
|---|---|---|
| Go | 1.25+ | Go官网 |
| MySQL | 5.7+ / 8.x | 安装教程 |
| Redis | 7.x | 安装教程 |
开发工具(可选):
- GoLand(推荐)
- Visual Studio Code + Go 插件
项目结构
youlai-gin/
configs/ # 配置文件
dev.yaml # 开发环境配置
prod.yaml # 生产环境配置
internal/ # 核心业务源码
auth/ # 认证模块
codegen/ # 代码生成模块
common/ # 公共模块(数据库/Redis/权限/日志/工具等)
file/ # 文件管理模块
message/ # SSE 实时通信
middleware/ # 中间件(JWT/CORS/限流等)
router/ # 路由注册
system/ # 系统模块(用户/角色/菜单/部门/字典/通知/日志)
pkg/ # 公共库
constant/ # 常量定义
enums/ # 枚举类型
errs/ # 统一错误类型
model/ # 通用模型(分页/选项/实体)
types/ # 自定义类型(BigInt/LocalTime)
sql/ # 数据库脚本
mysql/
youlai_admin.sql # 初始化脚本
docker/ # Docker 部署编排
go.mod # Go 模块定义
main.go # 入口文件安装步骤
数据库初始化
执行数据库脚本:
bash
mysql -u root -p < sql/mysql/youlai_admin.sql或通过数据库管理工具导入 sql/mysql/youlai_admin.sql。
配置修改
修改 configs/dev.yaml:
数据库配置:
yaml
database:
host: localhost
port: 3306
username: root
password: your_password
dbname: youlai_admin
charset: utf8mb4Redis配置:
yaml
redis:
host: localhost
port: 6379
password: ""
database: 0JWT配置:
yaml
security:
sessionType: jwt
jwt:
secretKey: "your-secret-key-at-least-32-characters-long"
accessTokenTTL: 7200
refreshTokenTTL: 2592000启动服务
IDE方法:
运行入口文件:main.go
命令行方法:
bash
go mod tidy
go run main.go启动成功标志:
[GIN-debug] Listening and serving HTTP on :8000快速验证
API文档
访问Swagger文档:
http://localhost:8000/swagger/index.html登录测试
测试登录API使用Swagger或curl:
bash
curl -X POST http://localhost:8000/api/v1/auth/login \
-H "Content-Type: application/json" \
-d '{"username":"admin","password":"123456"}'成功响应:
json
{
"code": "00000",
"msg": "成功",
"data": {
"accessToken": "eyJhbGc...",
"refreshToken": "eyJhbGc...",
"tokenType": "Bearer",
"expiresIn": 7200
}
}前端联调
克隆前端项目
bash
git clone https://gitee.com/youlaiorg/vue3-element-admin.git
cd vue3-element-admin配置后端地址
修改 .env.development:
env
VITE_APP_API_URL=http://localhost:8000启动前端
bash
pnpm install
pnpm run dev访问 http://localhost:5173,使用以下账号登录:
- 用户名:
admin - 密码:
123456
常见问题
端口冲突
解决方案:当前入口默认监听 :8000(见 main.go),如需修改请在代码中调整 http.Server{ Addr: ":8000" }。
数据库连接失败
排查步骤:
- 确认 MySQL 服务已启动
- 检查数据库连接配置
- 确认数据库
youlai_admin已创建
Redis 连接失败
排查步骤:
- 确认 Redis 服务已启动:
redis-cli ping - 检查 Redis 连接配置
- 如果密码设置,确认密码正确
