SpringBoot(二): 使用Dokcer+SpringCloud+Consul+Fabio搭建微服务
SpringBoot: 2.1.1
SpringCloud: Greenwich.M3
Consul: consul:1.3.0
Fabio: fabiolb/fabio:1.5.5-go1.9.2
具体的pom.xml和application-dev.yml文件内容可以参考我的GitHub项目
1. Consul
1.1 安装
docker pull consul:1.3.0
1.2 启动
docker run -d -t -p 8300:8300 -p 8301:8301 -p 8302:8302 -p 8500:8500 -p 8600:8600 --name test-consul consul:1.3.0
2. Fabio
2.1 安装
docker pull fabiolb/fabio:1.5.5-go1.9.2
2.2 启动
docker run -d -t -p 9998:9998 -p 9999:9999 --link test-consul:consul -e 'registry_consul_addr=consul:8500' fabiolb/fabio:1.5.5-go1.9.2
3. Docker部署SpringBoot应用
3.1 打包
请参考使用Docker打包SpringBoot并Push到DockerHub文章中的打包.并对pom.xml和application-dev.yml、application-test.yml进行如下修改:
在pom.xml中添加如下内容:
<!--<properties>标签中-->
<spring-cloud.version>Greenwich.M3</spring-cloud.version><!--<dependencies>标签中-->
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter</artifactId>
</dependency>
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<dependency><groupId>com.netflix.feign</groupId><artifactId>feign-httpclient</artifactId><version>8.18.0</version>
</dependency><!--与<dependencies>标签同级-->
<dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency></dependencies>
</dependencyManagement>
<repositories><repository><id>spring-milestones</id><name>Spring Milestones</name><url>https://repo.spring.io/milestone</url><snapshots><enabled>false</enabled></snapshots></repository>
</repositories>
在application-dev.yml中添加如下内容:
spring:application:name: rest-api-mybatiscloud:consul:host: 127.0.0.1port: 8500discovery:register: truetags: urlprefix-/rest strip=/rest
3.2 启动
docker run --name rest_api --net=host -t star936/rest-api-mybatis:0.0.1
- -t参数: Docker打包应用的
镜像名:tag
4. 验证
4.1 查看consul ui
访问http://localhost:8500,查看是否注册上服务,如下图所示:
4.2 请求
向 http://localhost:9999/rest/{controller的URL} 发送请求,如果返回数据,则表示成功.
SpringBoot(二): 使用Dokcer+SpringCloud+Consul+Fabio搭建微服务相关推荐
- SpringCloud + kafka + ELK 搭建微服务日志管理平台
SpringCloud + kafka + ELK 搭建微服务日志管理平台 2019-12-31,写在前面的话 今天是2019最后一天了,最近几天都在搞这块微服务日志管理的事情,有很多种方案实现,每种 ...
- spring cloud+.net core搭建微服务架构:Api授权认证(六)
前言 这篇文章拖太久了,因为最近实在太忙了,加上这篇文章也非常长,所以花了不少时间,给大家说句抱歉.好,进入正题.目前的项目基本都是前后端分离了,前端分Web,Ios,Android...,后端也基本 ...
- spring cloud+dotnet core搭建微服务架构:配置中心续(五)
前言 上一章最后讲了,更新配置以后需要重启客户端才能生效,这在实际的场景中是不可取的.由于目前Steeltoe配置的重载只能由客户端发起,没有实现处理程序侦听服务器更改事件,所以还没办法实现彻底实现这 ...
- spring cloud+dotnet core搭建微服务架构:配置中心(四)
前言 我们项目中有很多需要配置的地方,最常见的就是各种服务URL地址,这些地址针对不同的运行环境还不一样,不管和打包还是部署都麻烦,需要非常的小心.一般配置都是存储到配置文件里面,不管多小的配置变动, ...
- 搭建微服务_快速搭建 SpringCloud 微服务开发环境的脚手架
本文作者:HelloGitHub-秦人 本文适合有 SpringBoot 和 SpringCloud 基础知识的人群,跟着本文可使用和快速搭建 SpringCloud 项目. HelloGitHub ...
- SpringCloud入门总结 + 使用SpringCloud搭建微服务项目
SpringCloud 1.认识微服务 2.认识spring Cloud 3.Spring Cloud Eureka 服务发现框架 3.1认识Eureka 3.2 实战--开发并部署Eureka Se ...
- 《黑马头条》SpringBoot+SpringCloud+ Nacos等企业级微服务架构项目
01环境搭建.SpringCloud微服务(注册发现.服务调用.网关) 1)课程对比 2)项目概述 2.1)能让你收获什么 2.2)项目课程大纲 2.3)项目概述 随着智能手机的普及,人们更加习惯于通 ...
- Consul + fabio 实现自动服务发现、负载均衡 1
Consul hashicorp团队开发 就是大名鼎鼎开发 vagrant 的团队. Consul 是一个提供服务发现.健康检测.K/V存储支持分布式高可用多数据中心的服务软件. 比较类似ZooKee ...
- spring cloud+dotnet core搭建微服务架构:服务发现(二)
前言 上篇文章<手把手教你使用spring cloud+dotnet core搭建微服务架构:服务治理(-)>实际上只讲了服务治理中的服务注册,服务与服务之间如何调用呢?传统的方式,服务A ...
最新文章
- 2020秋季人工神经网络作业登记与批改
- 180.4. WebSphere Commerce Engerprise 7.0 Feature Pack 2.iso
- python统计字符在文件中出现的次数_python字符串中字符出现次数(python获取字符串个数)...
- opengl教程 linux,绘制基本的几何图形 - OpenGL编程学习实战教程_Linux编程_Linux公社-Linux系统门户网站...
- 在MFC中使用Cstring
- Helloworld【C#】
- 【转】Android中APK安装过程及原理解析
- 回溯法 —— 求解0/1背包问题(剪枝)
- 工作两年和研究生两年(专业硕士)有什么差异?
- 单例模式--懒汉模式和饿汉模式
- python计算均线斜率_一根20日均线闯天下——量化回测“压箱底指标”,值得读十遍!...
- Unity—背包系统(思路总括)
- spss自学过程案例
- 软件工程第二次作业——git的使用
- springboot整合谷歌身份验证
- python画国际象棋_python用turtle画国际象棋棋盘
- 创建RF测试库之使用装饰器@keyword
- flask 智能图灵机器人
- python 过滤相似图片_Python过滤纯色图片,挑选视频封面
- ygomobile卡组下载网站_游戏王YGOMobile
热门文章
- 云原生安全之容器级网站防篡改
- proc文件系统介绍
- 上海/北京内推 | 小米相机部视频算法组招聘视觉图像算法工程师
- PT展揭晓“2021年中国5G实力榜”,亿美软通入围“5G消息企业十强”
- 移动硬盘插到台式机,外接网卡无法连接wifi处理
- 计算机l符号代表什么意思,衣服sml代表什么意思 分别是什么的标记
- iOS微信分享服务器设置,iOS 微信分享 universalLink
- 网站建设好但是访问不了的原因及解决方法
- Vue Cli webpack打包出现Waring :Critical dependency: the request of a dependency is an expression
- asp.net消除锯齿的办法