本视频采纳 MixGo V1.1 版本

当咱们习惯将 go 生态的不同的风行库拼装起来开发我的项目时,mix-go 就非常适合你,他帮忙你创立骨架代码把各种风行的库组合起来,帮忙你疾速开发各种类型的我的项目。

装置 golang

  • 下载 https://golang.google.cn/

配置环境变量

  • 批改 golang 本人的环境变量

    • 开启 go mod
    • 配置代理
    • 配置库哈希效验网站
go env -w GO111MODULE="on" GOPROXY="https://goproxy.io,direct" GOSUMDB="sum.golang.org"
  • $GOPATH/bin 目录退出到 $PATH

打印 GOPATH

go env GOPATH

编辑 ~/.bashrc or ~/.zshrc 退出 $GOPATH/bin

export PATH="$PATH:/Users/**/go/bin"

装置 mixcli

go get github.com/mix-go/mixcli

创立我的项目

$ mixcli new helloUse the arrow keys to navigate: ↓ ↑ → ← ? Select project type:    CLI  ▸ API    Web (contains the websocket)    gRPC

骨架细节解说

观看视频收听以下内容

  • 配置文件
  • di 依赖注入
  • gin 相干
  • gorm 的应用
  • jwt 解决

脱漏未讲的内容: 代码公布

残缺的代码目录构造如下:

.├── .env├── .gitignore├── README.md├── bin│   ├── .gitignore│   └── hello_linux├── commands│   ├── api.go│   ├── main.go│   └── welcome.go├── conf│   └── config.yml├── configor│   └── main.go├── controllers│   ├── auth.go│   ├── hello.go│   └── user.go├── di│   ├── goredis.go│   ├── gorm.go│   ├── server.go│   ├── session.go│   └── zap.go├── dotenv│   └── main.go├── go.mod├── go.sum├── main.go├── middleware│   ├── auth.go│   └── cors.go├── models│   └── users.go├── routes│   └── main.go└── runtime    ├── .gitignore    └── logs        └── mix.log

咱们只须要将编译好的二进制(穿插编译)加上内部文件公布到线上即可

穿插编译: GOOS=linux GOARCH=amd64 go build -o bin/hello_linux main.go
.├── .env├── bin│   └── hello_linux├── conf│   └── config.yml└── runtime
  • .env 须要批改为线上的数据库账号
  • conf 的配置文件必须发到线上
  • bin 二进制必须放到这个目录,因为读取配置文件是以这个目录为根目录
  • runtime 目录必须有,不然日志创立不胜利会抛出异样