docker中部署piggymetrics微服务项目

1.环境 vmware 10、 centos7.0,Docker(version 18.09.7, build 2d0083d),docker-compose(version 1.24.1, build 4667896)  openjdk(javac 1.8.0_212) ,xshell,xftp

2.部署步骤

首先要先看下piggymetrics涉及的端口有没有被占用。

 clone https://github.com/sqshq/piggymetrics.git 到本地,通过xftp上传到centos,

首先要把mongodb目录下的init.sh的编码格式转换成unix格式,不然会出现连接错误。方法进入到init.sh所在目录。执行dos2unix init.sh

然后执行 进入piggymetrics根目录执行 mvn package -DskipTests 生成jar包如图(我的已经生成成功。所以用find命令查看)

docker中部署piggymetrics微服务项目_第1张图片

然后执行run docker-compose -f docker-compose.yml -f docker-compose.dev.yml up

等待镜像文件生成,生成后会自动启动容器。我的在执行完后由于config容器会显示unhealthy所以要等一两分钟。

再执行docker-compose -f docker-compose.yml -f docker-compose.dev.yml up, 所有的容器才会正常启动。

如图

docker中部署piggymetrics微服务项目_第2张图片

大约20分钟后,我的电脑才启动完成。

在物理机上访问:http://192.168.121.128:80(ip是vmware,centos的ip)可以看到如下图

docker中部署piggymetrics微服务项目_第3张图片

然后点击“create new account” 创建用户,再保存时候有可能会弹出错误提示框docker中部署piggymetrics微服务项目_第4张图片

这时候有可能是我的服务还没有完全启动,因为需要20多分钟。至少要看到eureka的6个服务都只启动。在浏览器中输入

http://192.168.121.128:8761/ 可以看到如图

docker中部署piggymetrics微服务项目_第5张图片

账户创建成功后登录如下图docker中部署piggymetrics微服务项目_第6张图片

然后看下rabbitmq信息

输入 http://192.168.121.128:15672,账号guest/guest可以看到下图

docker中部署piggymetrics微服务项目_第7张图片

 输入http://192.168.121.128:/hystrix 点击访问,访问不到。不知什么原因。restart 容器无效。因为第一次我是把gateway,rabbitmq等端口改掉了。后面重新下载代码采用默认设置。删除容器,镜像重新折腾一遍。还是如此。再折腾了一遍,依然如此。怀疑是网络问题,但是登录到monitoring容器中docker exec -it containerID bash ,执行http://turbine-stream-service:8080/turbine/turbine.stream可以正常看到信息流。说明不是TURBINE-STREAM-SERVICE服务的原因。ping192.168.121.128也可以ping通。通过docker logs piggymetrics_monitoring_1,容器日志信息正常。查看源代码,除了pom就是注解,没有其他代码。??于是bing,bing,bing搜索,最后在https://github.com/mlabouardy/hystrix-dashboard-docker,下载了镜像按照说明运行

 docker run -d -p 8081:9002 --name hystrix-dashboard mlabouardy/hystrix-dashboard:latest

可以正常访问。然后就更改了piggymetrics的docker-compose.yml的monitoring的image为这个image如图

docker中部署piggymetrics微服务项目_第8张图片

port也改称了9002,映射外部的端口不变。

重新运行docker-compose -f docker-compose.yml -f docker-compose.dev.yml up

然后访问http://192.168.121.128:9000/hystrix,dashboard出现了。

docker中部署piggymetrics微服务项目_第9张图片

 

输入piggymetrics的turbing.stream的url到hystrix dashboard页面的第一个输入框里http://turbine-stream-service:8080/turbine/turbine.stream点击"monitoring stream"按钮可以看到监控数据,如图

docker中部署piggymetrics微服务项目_第10张图片

 

至此,piggymetrics搭建完毕。hystrix dashboard的原因还是未知。应该是image原因。但是dashboard中没有业务代码,完全可以用别的image代替。当然项目代码也要换一个。最好在本地测试通过再部署,不要像我直接换镜像。

 

你可能感兴趣的:(docker)