service/app/mix/cmd/consul.go

44 lines
1.1 KiB
Go
Raw Normal View History

2024-05-09 19:06:37 +08:00
package main
import (
"fmt"
"github.com/hashicorp/consul/api"
)
func main() {
//写api的配置信息
config := api.DefaultConfig()
//注册到consul上的地址
config.Address = "127.0.0.1:8500" // Consul 服务器地址
//将config注册到客户端,由客户端实现
client, err := api.NewClient(config)
if err != nil {
panic(err)
}
// 创建一个新的服务条目
registration := new(api.AgentServiceRegistration)
registration.ID = "my-service-3"
registration.Name = "my-service"
registration.Port = 8083
registration.Address = "127.0.0.1"
registration.Tags = []string{"tag1", "tag2"}
reg := &api.AgentServiceRegistration{
Name: registration.Name, // 服务名称
ID: registration.ID, // 服务 ID必须唯一
Address: registration.Address, //服务的地址
Port: registration.Port, // 服务端口 服务所在的监听端口
Tags: registration.Tags, // 可选:服务标签
}
// 将服务注册到 Consul
err = client.Agent().ServiceRegister(reg)
if err != nil {
panic(err)
}
fmt.Println("Service registered successfully")
}