【go-zero】docker镜像直接部署API与RPC服务 如何实现注册发现?docker network 实现 go-zero 注册发现

一、场景&问题

使用docker直接部署go-zero微服务会发现API无法找到RPC服务

1、API无法发现RPC服务

用docker直接部署
我们会发现API无法注册发现RPC服务
原因是我们缺少了docker的network网桥

2、系统内查看

  • RPC服务运行正常
  • API服务启动,通过docker logs 查看日志还是未发现RPC
  • API的yaml配置 RPC服务的IP是127.0.0.1与对应的端口

【go-zero】docker镜像直接部署API与RPC服务 如何实现注册发现?docker network 实现 go-zero 注册发现_第1张图片

下图为改成了定义docker network 子网掩码的IP,没用到正确分配的IP还是报错

【go-zero】docker镜像直接部署API与RPC服务 如何实现注册发现?docker network 实现 go-zero 注册发现_第2张图片

3、发现问题

API发现RPC使用docker就不能像二进制启动那样直接使用127.0.0.1就可以
这里我们需要借助docker 的network

二、解决方法

因为docker之间是隔离的,无法通过127.0.0.1
可以参考一下docker网络方面的知识

文章一:子网掩码与IPV4

你可能感兴趣的:(go-zero,#,docker,rpc,go-zero,docker,network,go)