遵循 RESTful API 设计规范vue
基于 GIN WEB API 框架,提供了丰富的中间件支持(用户认证、跨域、访问日志、追踪ID等)mysql
基于Casbin的 RBAC 访问控制模型linux
JWT 认证git
支持 Swagger 文档(基于swaggo)github
基于 GORM 的数据库存储,可扩展多种类型数据库redis
配置文件简单的模型映射,快速可以获得想要的配置sql
TODO: 单元测试数据库
settings: application: # 项目启动环境 env: dev # 当 env:demo 时,GET之外的请求操做提示 envmsg: "谢谢您的参与,但为了你们更好的体验,因此本次提交就算了吧!" # 主机ip 或者域名,默认0.0.0.0 host: 0.0.0.0 # 是否须要初始化数据库结构以及基本数据;true:须要;false:不须要 isinit: false # JWT加密字符串 jwtsecret: 123abc # log存放路径 logpath: temp/logs/log.log # 服务名称 name: go-admin # 服务端口 port: 8000 readtimeout: 1 writertimeout: 2 database: # 数据库名称 database: dbname # 数据库类型 dbtype: mysql # 数据库地址 host: 127.0.0.1 # 数据库密码 password: password # 数据库端口 port: 3306 # 数据库用户名 username: root redis: # redis连接地址 addr: 0.0.0.0:6379 # db db: 0 # 密码 password: password # 读超时时长 readtimeout: 50
首次启动说明windows
# 获取代码 git clone https://github.com/wenjianzhang/go-admin.git # 进入工做路径 cd ./goadmin/src/goadmin # 编译项目 go build # 修改配置 vi ./config/setting.yml (更改isinit和数据库链接) # 1. 配置文件中修改数据库信息 # 注意: settings.database 下对应的配置数据) # 2. 确认数据库初始化参数 # 注意: settings.application.isinit 若是是首次启动,请把当前值设置成true,系统会自动初始化数据库结构以及基本的数据信息; # 3. 确认log路径 # 启动项目,也能够用IDE进行调试 ./goadmin # 也能够在WIKI中查看说明
文档生成api
swag init
若是没有swag命令 go get安装一下便可
go get -u github.com/swaggo/swag/cmd/swag
交叉编译
env GOOS=windows GOARCH=amd64 go build main.go # or env GOOS=linux GOARCH=amd64 go build main.go
admin / 123456
看到好多体验的朋友验证码错误,因此调整了对比度,方便你们体验!
Copyright (c) 2020 wenjianzhang
qq技术交流群: 74520518