mirror of
https://gitee.com/shikong-sk/gofiber-study
synced 2025-02-22 14:52:14 +08:00
.idea | ||
app | ||
common | ||
controller | ||
docs | ||
global | ||
logger | ||
middleware | ||
model | ||
services | ||
.air.toml | ||
.gitignore | ||
config.yaml | ||
go.mod | ||
go.sum | ||
init.go | ||
main.go | ||
README.MD |
使用 gofiber 作为 http 服务框架
编译环境
因使用了 xorm.io/reverse
windows 环境下 需要安装 gcc 环境
Mingw 可前往 (mingw仓库)
下载 x86_64-posix-seh
解压后将 bin 目录 添加到环境变量
重启生效即可
验证是否安装 gcc
gcc -v
一键初始化项目
go generate -x init.go
xorm
从结构体 同步 数据库表结构
User表为例
go test ./model/user/generate -v
从 数据库 反向同步 数据库结构
部分类型 如: bool 可能需要手动处理
go generate ./model/user/reverse_generate.go
手动初始化
swagger
安装
go install github.com/swaggo/swag/cmd/swag@latest
生成 swagger 文档
# --parseInternal 解析内部依赖包,默认值: false
# --parseDependency 解析外部依赖包,默认值: false
# --parseDepth 解析依赖包深度,默认值:100
# swag init --parseDependency --parseInternal
# 简写
swag i -pd --parseInternal
air 热重载
安装
go install github.com/cosmtrek/air@latest
配置文件 .air.toml
运行项目
热重载
air
直接运行
go run ./main.go
编译运行
go build
所需依赖服务 环境
建议通过 portainer 部署
Portainer
sudo docker run -d -p 9000:9000 --name portainer --restart always\
-v /var/run/docker.sock:/var/run/docker.sock\
-v /opt/portainer/data:/data\
portainer/portainer-ce
Redis
version: '3.4'
services:
redis_master:
container_name: redis-master
image: redis:latest
restart: always
command: /etc/redis/redis.conf --appendonly yes --requirepass "12341234"
ports:
- "6379:6379"
volumes:
- "/opt/redis/data:/data"
- "/opt/redis/redis.conf:/etc/redis/redis.conf"
Mysql
version: "3.4"
x-environment: &environment
environment:
- MYSQL_PORT_3306_TCP_ADDR=mysql
- MYSQL_ROOT_HOST=%
- MYSQL_ROOT_PASSWORD=12341234
services:
mysql:
container_name: mysql
image: mysql/mysql-server:8.0
ports:
- "3306:3306"
restart: always
<<: *environment
volumes:
- /opt/mysql/data:/var/lib/mysql