余温旧梦-王世彪的博客
关注公众号
  • 开发桌面程序
  • javascript教程
  • css样式
  • vuejs
  • 部署免费CDN
  • SEO搜索引擎优化
  • vuepress教程
  • redis分布式缓存
  • Golang
  • PHP
  • Python
  • Java
  • NodeJs
  • tomcat
  • ELK
  • Mysql数据库
  • Nosql数据库
  • C/C++底层开发
  • 音视频/流媒体
  • linux服务器
  • nginx服务器
  • 容器技术
  • 负载均衡
  • 项目管理
  • 持续集成
  • 大数据
  • 微信公众号运营
  • markdown用法
赞一个
友链
联系作者

王世彪

努力做个影响他人滴人
关注公众号
  • 开发桌面程序
  • javascript教程
  • css样式
  • vuejs
  • 部署免费CDN
  • SEO搜索引擎优化
  • vuepress教程
  • redis分布式缓存
  • Golang
  • PHP
  • Python
  • Java
  • NodeJs
  • tomcat
  • ELK
  • Mysql数据库
  • Nosql数据库
  • C/C++底层开发
  • 音视频/流媒体
  • linux服务器
  • nginx服务器
  • 容器技术
  • 负载均衡
  • 项目管理
  • 持续集成
  • 大数据
  • 微信公众号运营
  • markdown用法
赞一个
友链
联系作者
  • 分布式缓存

  • 分布式存储

  • mysql

  • postgresql

  • mongodb

  • c或c++

  • golang

    • 环境配置

    • 基础

    • 单元测试

    • 后台管理脚手架

    • web框架gin

    • web框架echo

    • web框架GoFrame

    • 微服务框架go-micro

      • go-micro框架基础教程
      • 安装go-micro
        • 安装go-micro v2
        • 安装go-micro v4
        • 切换go-micro版本
    • 微服务

    • 接口管理

    • orm框架gorm

    • 开源论坛

    • 爬虫

  • php

  • java

  • nodejs

  • python

  • tomcat

  • elk

  • 音视频流媒体

  • 后台
  • golang
  • 微服务框架go-micro
王世彪
2022-02-15
目录

安装go-micro

# 安装go-micro

本文介绍安装go-micro的步骤。

注意: protobuf和go micro相关工具的版本必须完全一致,才能确保生成的pb文件是相同的,否则文件内容会有差异。

# 安装go-micro v2

**注意: **如下的各个工具的版本要严格匹配,否则可能会有问题。

  1. 安装protobuf 根据教程安装protobuf, 安装3.10.0版本的protobuf。

  2. 安装go-micro工具集

go get github.com/micro/micro/v2@v2.4.0
go get github.com/golang/protobuf/proto@v1.3.5
go get github.com/golang/protobuf/protoc-gen-go@v1.3.5
go get github.com/micro/protoc-gen-micro/v2@v2.0.0
  1. Makefile 执行make proto生成pb文件,示例如下:
MODIFY=Mgithub.com/micro/go-micro/api/proto/api.proto=github.com/micro/go-micro/v2/api/proto

.PHONY: proto
proto:
	@for var in $(shell find . -name "*.proto"); do \
        protoc --proto_path=.\
         		--micro_out=${MODIFY},paths=source_relative:.\
         		--go_out=${MODIFY},paths=source_relative:. $$var; \
    done
	@find . -name "*.pb.go" | xargs -n1 -IX bash -c 'sed s/,omitempty// X > X.tmp && mv X{.tmp,}'

# 安装go-micro v4

  1. 安装protobuf 根据教程安装protobuf, 安装最新版本[当前最新版本为3.19.4]的protobuf。

  2. 安装go-micro工具集

go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
go install github.com/asim/go-micro/cmd/protoc-gen-micro/v4@latest
  1. Makefile 执行make proto生成pb文件,示例如下:
MODIFY=Mgithub.com/micro/go-micro/api/proto/api.proto=go-micro.dev/v4/api/proto

proto:
	@for var in $(shell find . -name "*.proto"); do \
        protoc --proto_path=.\
         		--micro_out=${MODIFY},paths=source_relative:.\
         		--go_out=${MODIFY},paths=source_relative:. $$var; \
    done
	@find . -name "*.pb.go" | xargs -n1 -IX bash -c 'sed s/,omitempty// X > X.tmp && mv X{.tmp,}'

# 切换go-micro版本

若您有多个项目使用的是不同的go-micro版本,需要经常切换版本,那么建议编写切换脚本。示例如下:

 wangshibiao@192  ~  cat /usr/local/bin/switch_go-micro_v2.sh
#! /bin/sh

cd ~/Downloads/tmp/protobuf-3.10.0 && make install

go get github.com/micro/micro/v2@v2.4.0
go get github.com/golang/protobuf/proto@v1.3.5
go get github.com/golang/protobuf/protoc-gen-go@v1.3.5
go get github.com/micro/protoc-gen-micro/v2@v2.0.0
 wangshibiao@192  ~ 
 wangshibiao@192  ~  cat /usr/local/bin/switch_go-micro_v4.sh
#! /bin/sh

cd ~/Downloads/tmp/protobuf-3.19.4
make install

go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
go install github.com/asim/go-micro/cmd/protoc-gen-micro/v4@latest
 wangshibiao@192  ~ 

执行/usr/local/bin/switch_go-micro_v2.sh则切换到v2版本,执行/usr/local/bin/switch_go-micro_v4.sh则切换到v4版本。

#微服务#golang
上次更新: 2022-02-15 00:48:13
go-micro框架基础教程
安装etcd

← go-micro框架基础教程 安装etcd→

最近更新
01
mysql创建用户
04-09
02
golang错误处理最佳实践
03-17
03
基于proto文件生成rpc接口定义文档
03-11
更多文章>
Theme by Vdoing | Copyright © 2019-2022 王世彪 | MIT License
冀ICP备19016776号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式