0
点赞
收藏
分享

微信扫一扫

docker swarm部署spring-cloud服务集群

霸姨 2022-04-14 阅读 67

一.前言

上篇我们讲了如何在docker swarm上搭建一个高可用的eureka服务,本篇博客讲述如何搭建多节点多容器的其他服务

二.服务分类

zuul:网关服务

base-info:主数据、登录相关

oauth:授权

2.1 zuul网关搭建:

先创建zuul的栈文件:touch /usr/zuul.yml(位置随意)

zuul.yml内容:

 

修改zuul yml文件:

zuul Dockerfile文件:

pom文件修改:可参照上篇eureka服务搭建。

zuul代码修改完毕后,mvn clean -> mvn package ->docker build ->docker push到镜像库(具体操作见上篇博客

镜像上传完毕后,登录docker swarm manager节点拉取镜像:

 

镜像拉取(仅manager节点拉取即可)完毕后:

docker stack deploy -c zuul.yml demo

执行完毕后查看服务列表:

docker service ls

查看服务日志:docker service logs demo_zuul

查看服务容器落在哪些节点:docker service ps demo_zuul 

 

查看服务属性信息:docker inspect demo_zuul 或 id

查看容器信息:docker inspect 容器name | 容器id

2.2 base-info服务搭建

步骤同上,唯一区别:

2.3 oauth 服务搭建

同base-info

三.效果与测试

搭建完毕后查看eureka客户端:

执行登录操作调用base-info登录方法返回token:

 

 以上我们会发现我们的网关服务只有两个节点,但是请求:

192.168.1.110:8085/baseinfo/userlogin/login、192.168.1.111:8085/baseinfo/userlogin/login、192.168.1.112:8085/baseinfo/userlogin/login均可返回token。这是因为docker swarn会根据暴露的端口去轮询docker swarn集群中部署的节点,直到找到部署了zuul服务的容器去执行api请求。

 

举报

相关推荐

0 条评论