转载于 http://blog.c7d8.com/blog/21.html 原文可能有更新
背景
笔者在阿里云上有1台服务器,本着宁愿数据丢失也要榨干服务器的资源的目的,在那台服务器上启用了docker单节点集群,并且通过部署容器的方式开启了很多服务,比如
基础服务有 mysql、redis、rabbitmq、mongodb
应用服务包括 configserver、discovery 、springboot应用等
服务器本身应用也只是笔者在玩,并没有几个人访问,也没有什么请求量,所以负载均衡部分完全可以去掉,我要的只是大家共享80端口,而docker化的nginx需要一些配置文件,太过繁琐
目前使用的是阿里云针对容器的负载均衡slb,虽然使用的是最低配置的负载均衡实例,但每个月还是需要扣费差不多20元,对于笔者而言,花的这部分钱没有给我带来收益、也没有让我很爽,自然想要砍掉。接下来我们就看从技术上怎么去砍。
思路
前面也提到,我们不需要负载均衡,我们只要路由功能,受阿里云文档(自定义路由-使用手册_服务发现和负载均衡_Swarm 集群) 启发,我尝试使用 acs/proxy 镜像 但由于是基于 swarm 而我们的是swarm mode 自然行不通,后来也尝试过 dockercloud/hap