Docker Swarm mode 微服务部署及调用
2017-07-24 23:25
786 查看
Docker Swarm mode 微服务部署及调用
使用spring boot 开发两个应用,分别命名为test-a、test-b, test-a 为服务提供者、test-b 为服务消费者,test-b 在swarm mode 集群中通过服务 test-a 部署时指定的服务名称调用服务。服务提供者 test-a 代码如下:
@RestController public classTestAContoller(){ @GetMapping("/info") public String getAInfo(){ return "A 的服务信息"; //返回A服务的服务信息 } }
@SpringBootApplication public class WebApplication(){ public static void main(String[] args){ SpringApplication.run(AWebApplication.class,args); } }
application.properties
server.port=80 spring.application.name=testAService
服务消费者 test-b 代码如下:
@RestController public class TestBContoller(){ @Bean RestTemplate restTemplate(); @GetMapping("/a/info") public String getAInfo(){ String message = restTemplate.getForObject("http://testAService/info",String.class); return "A : " + message; //返回A服务的服务信息 } }
@SpringBootApplication public class WebApplication(){ public static void main(String[] args){ SpringApplication.run(WebApplication.class,args); } }
application.properties
server.port=80 spring.application.name=testBService
Swarm mode 服务部署
运行 docker 服务创建命令分别部署test-a 、test-b:docker service create \ --replicas 2 \ --name testAService \ test-a:1.0 docker service create \ --replicas 2 \ --publish 8080:80 --name testBService \ test-a:1.0
服务部署之后即可通过 http://localhost:8080/a/info 验证服务是否调用成功!!!
Dockerfile 文件
test-a: docker build -t test-a:1.0 .FROM java:8-jre-alpine ADD test-a.jar app.jar RUN sh -c 'touch /app.jar' ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
test-b: docker build -t test-b:1.0 .
FROM java:8-jre-alpine ADD test-b.jar app.jar RUN sh -c 'touch /app.jar' ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
相关文章推荐
- Spring cloud + Swarm mode 实战二:部署微服务
- Docker Swarm 入门示例3: 部署服务到swarm
- docker swarm模式使用traefik部署服务
- docker实战2 (docker swarm的应用,docker集群的构建,在docker集群中部署服务的创建与更新)
- Docker 入门笔记 4 - 用Swarm部署服务
- Docker技术swarm+compose部署服务
- 如何调用docker swarm service的API来创建及更新服务
- docker深入2-基于 swarm mode 的服务发现和注册
- Docker Swarm 集群 微服务部署
- Docker - 使用Swarm和compose部署服务(containers)
- 如何使用Docker Machine部署Swarm集群
- 云计算之路-阿里云上-容器难容:容器服务故障以及自建 docker swarm 集群故障
- 视频:WCF实战开发、部署WCF服务计算器、跨机器调用WCF服务
- 微服务之一键部署git+maven+jenkins+docker
- Docker集群实验环境布署--swarm【3 注册服务监控与自动发现组件--consul】
- Docker集群管理(三)—— docker swarm mode基础教程
- 搭建Docker Swarm集群实战(二)(服务发现使用consul)
- Docker Swarm 入门示例7: 滚动更新服务
- Docker Swarm Mode 的容器资源回收问题