go-micro使用consul注册中心
注 :本次使用阿里云服务器,并使用docker部署
启动consul
#拉取docker的consul镜像
docker pull consul
#查看docker镜像
docker images
#启动consul
docker run -di -p 8500:8500 consul
下载micro中的cunsul插件
注:micro默认使用cmd注册中心
go get github.com/asim/go-micro/plugins/registry/consul/v4
示例代码
package main
import (
"github.com/asim/go-micro/plugins/registry/consul/v4"
"github.com/gin-gonic/gin"
"go-micro.dev/v4/registry"
"go-micro.dev/v4/web"
)
func main() {
consulReg := consul.NewRegistry(
registry.Addrs("118.178.242.230:8500"),
)
ginRouter := gin.Default()
ginRouter.Handle("GET", "/user", func(context *gin.Context) {
context.String(200, "user api")
})
ginRouter.Handle("GET", "/news", func(context *gin.Context) {
context.String(200, "news api")
})
service := web.NewService(
web.Name("prodService"),
web.Address(":8001"),
web.Handler(ginRouter),
web.Registry(consulReg),
)
service.Run()
}