我使用docker运行多个MySQL实例。 我打算使用nginx作为反向代理服务器,我想分配公共IP到每个实例,所以我可以映射公共IP到我的dockernetworking,这可能吗?
您可能希望将consul与注册表部分一起使用,因为Consul为所有注册的实例提供DNS服务器: https : //www.consul.io/docs/agent/dns.html
或多或少,这意味着,码头实例向领事登记,领事也可以解决他们的外部服务。 这将要求您拥有更多的公共IP。
如果你只需要一个公共IP地址,你显然希望负载平衡mysql,因为TCP连接不能被路由/域“路由”。 也就是说,您可以使用consul作为服务发现和tiller + consul后端为您生成上游的nginx配置,列出所有当前可用的服务器
您可以简单地使用您的私有地址空间中的保留的IP为Docker容器,通过设置公共IP使您的nginx实例从Internet路由,最后,您可以将请求均衡到您的docker容器。