go-zero单体应用入门实战(一)

一、go-zero介绍与环境准备

1.1.go-zero简介

go-zero是一个go语言的框架,类似于java中的spring boot和spring cloud。作者是国内go语言大神级人物,万俊峰Kevin。官方网址:go-zero 缩短从需求到上线的距离

go-zero功能非常强大,初学者建议从单体应用开始,再逐步深入。

1.2.开发环境

操作系统 :win11 数据库:mysql8.0

go语言版本:1.19.4(推荐>=1.18) goctl工具(作用:辅助生成一些代码)

开发工具:vscode

1.2.1.安装go语言

go version,验证安装

1.2.2.设置GOPROXY

go env -w GOPROXY=https://goproxy.cn,direct

1.3.安装goctl

go install github.com/zeromicro/go-zero/tools/goctl@latest

C:\Users\63118>go install github.com/zeromicro/go-zero/tools/goctl@latest
go: downloading github.com/zeromicro/go-zero/tools/goctl v1.4.3
go: downloading github.com/zeromicro/go-zero v1.4.3
go: downloading github.com/spf13/cobra v1.6.1
go: downloading github.com/zeromicro/go-zero v1.3.4
go: downloading github.com/logrusorgru/aurora v2.0.3+incompatible
go: downloading github.com/withfig/autocomplete-tools/integrations/cobra v0.0.0-20220705165518-2761d7f4b8bc
go: downloading github.com/iancoleman/strcase v0.2.0
go: downloading github.com/go-sql-driver/mysql v1.7.0
go: downloading github.com/emicklei/proto v1.11.1
go: downloading github.com/inconshreveable/mousetrap v1.1.0
go: downloading github.com/zeromicro/antlr v0.0.1
go: downloading github.com/lib/pq v1.10.6
go: downloading go.opentelemetry.io/otel v1.7.0
go: downloading go.opentelemetry.io/otel/trace v1.7.0
go: downloading golang.org/x/text v0.3.7
go: downloading github.com/zeromicro/ddl-parser v1.0.4
go: downloading github.com/prometheus/client_golang v1.12.2
go: downloading go.opentelemetry.io/otel/sdk v1.7.0
go: downloading go.opentelemetry.io/otel/exporters/zipkin v1.7.0
go: downloading go.opentelemetry.io/otel/exporters/jaeger v1.7.0
go: downloading google.golang.org/grpc v1.46.2
go: downloading google.golang.org/protobuf v1.28.0
go: downloading github.com/fatih/color v1.13.0
go: downloading go.uber.org/automaxprocs v1.5.1
go: downloading github.com/pelletier/go-toml/v2 v2.0.1
go: downloading github.com/go-logr/logr v1.2.3
go: downloading github.com/openzipkin/zipkin-go v0.4.0
go: downloading github.com/pelletier/go-toml v1.9.4
go: downloading golang.org/x/sys v0.0.0-20220429233432-b5fbb4746d32
go: downloading github.com/prometheus/client_model v0.2.0
go: downloading github.com/prometheus/common v0.32.1
go: downloading github.com/mattn/go-colorable v0.1.12
go: downloading github.com/mattn/go-isatty v0.0.14
go: downloading github.com/spaolacci/murmur3 v1.1.0
go: downloading github.com/antlr/antlr4/runtime/Go/antlr v0.0.0-20210521184019-c5ad59b459ec
go: downloading github.com/go-logr/stdr v1.2.2
go: downloading github.com/beorn7/perks v1.0.1
go: downloading github.com/cespare/xxhash/v2 v2.1.2
go: downloading github.com/golang/protobuf v1.5.2
go: downloading github.com/cespare/xxhash v1.1.0
go: downloading github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369

验证安装是否成功

goctl -v

C:\Users\63118>goctl
A cli tool to generate api, zrpc, model code

GitHub: https://github.com/zeromicro/go-zero
Site:   https://go-zero.dev

Usage:
  goctl [command]

Available Commands:
  api               Generate api related files
  bug               Report a bug
  completion        Generate the autocompletion script for the specified shell
  docker            Generate Dockerfile
  env               Check or edit goctl environment
  help              Help about any command
  kube              Generate kubernetes files
  migrate           Migrate from tal-tech to zeromicro
  model             Generate model code
  quickstart        quickly start a project
  rpc               Generate rpc code
  template          Template operation
  upgrade           Upgrade goctl to latest version

Flags:
  -h, --help      help for goctl
  -v, --version   version for goctl

Use "goctl [command] --help" for more information about a command.

C:\Users\63118>goctl -v
goctl version 1.4.3 windows/amd64

1.4.安装vscode

vscode安装省略

1.4.1.安装go 插件

1.4.2.安装goctl插件

1.5.mysql8创建数据库

mysql8安装省略

ip:192.168.58.130 数据库:gozero 用户名:gozero

create database gozero character set utf8mb4 collate utf8mb4_bin;

create user gozero@localhost identified with mysql_native_password by 'Gozero@123' password expire never;

grant all privileges on gozero.* to gozero@localhost;

create user 'gozero'@'%' identified with mysql_native_password by 'Gozero@123' password expire never;

grant all privileges on gozero.* to 'gozero'@'%';

  • 12
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值