热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PiggyMetrics与Docker搭建环境

说明:看下面文档之前先看http:www.jianshu.compe26570d1b297?mTypeGroup1、环境win10、电脑内存大于4G2、工具安装git

说明:看下面文档之前先看http://www.jianshu.com/p/e26570d1b297?mType=Group
1、环境
win10、电脑内存大于4G
2、工具安装
git、maven、docker(docker安装过程中最好把git、virtualbox等选项都勾上,一起安装)
docker安装参考:http://www.jianshu.com/p/e26570d1b297?mType=Group
3、docker运行
3.1 docker安装完成后,桌面出现Docker Quickstart Terminal和Kitematic (Alpha)两个快捷方式
首先双击启动Docker Quickstart Terminal,启动完成后,终端会显示一个ip地址192.168.99.100,这个地址就是docker供外部访问的ip。
启动过程中可能会出现如下问题:
boot2docker.iso下载失败,所以需要翻墙下载,或者下载别人共享的镜像,注意版本需要和docker所需要的版本一致,不能下最新的也不能低于所需的版本。
下载完后之后,放入C盘,我的路径是C:\Users\admin.docker\machine\cache
首先情况cache,然后再放入。
参考网站: https://my.oschina.net/aixiaohua/blog/651171
3.2 修改VirtualBox中docker虚拟机的内存和处理器核数
基于PiggyMetrics搭起分布式系统会起10个容器,所需内存比较大,所以需要打开VirtualBox,修改docker对应的虚拟机的内存和处理器,默认名字是default
这里写图片描述
内存至少3G,处理器2核
3.3 启动docker cli界面
首先双击Kitematic (Alpha),选择VirtualBox进入docker,之后进入
这里写图片描述
点击左下角的docker cli
这里写图片描述
下面可以开始编译运行微服务了
4、微服务编译运行
4.1 首先切换到源码目录 ,我的是cd E:\ecnu\workspace\pm\PiggyMetrics\
源码是maven构建
4.2 打包

mvn package -DskipTests

执行后在每一个项目的target下有两个jar包
这里写图片描述
4.3 编译

docker-compose -f docker-compose-base.yml build

这里写图片描述

docker-compose -f docker-compose-base.yml -f docker-compose.yml build

这里写图片描述
4.4 运行

docker-compose -f docker-compose-base.yml up -d

这里写图片描述

docker-compose -f docker-compose.yml up -d

这里写图片描述
查看启动的容器

docker ps

这里写图片描述
这里写图片描述
服务器启动过程中,可能有些服务会启动失败
访问网站:http://192.168.99.100:8761/
最终会起以下6个服务,都必须全起,这几个网站才能全部访问。(注意右边多出的部分是用户名密码)

http://192.168.99.100:8888/gateway/default
user/admin
http://192.168.99.100:8888/registry/default
http://192.168.99.100:15672
guest/guest
http://192.168.99.100:8761
http://192.168.99.100
http://192.168.99.100:9000/hystrix
http://192.168.99.100:8989

这里写图片描述
如果发现有个服务没起,可以在restart,方法如图
这里写图片描述
5、接口访问
系统中新建了sharedbike-service项目,其中一个接口访问,如下图,首先得安装DHC插件

URL:192.168.99.100/bike/
POST方式
请求参数JSON格式:{“bikeId”:”1111”, “lat”:”112”, “lon”:”341”}
200:代表请求成功

这里写图片描述
6、访问mongodb
6.1 获取mongodb帐号密码
使用工具robomongo客户端连接mongodb
默认的用户名密码可以查看mongodb目录下的init.sh

url:192.168.99.100
端口:25000
用户名:user
密码:admin
数据库名:piggymetrics

即如下
这里写图片描述
6.2 连接成功后:
这里写图片描述
插入的bikeinfo
这里写图片描述
参考网站:
http://git.oschina.net/huangmeng4520/PiggyMetrics/
http://www.jianshu.com/p/e26570d1b297?mType=Group


推荐阅读
  • 本文总结了初学者在使用dubbo设计架构过程中遇到的问题,并提供了相应的解决方法。问题包括传输字节流限制、分布式事务、序列化、多点部署、zk端口冲突、服务失败请求3次机制以及启动时检查。通过解决这些问题,初学者能够更好地理解和应用dubbo设计架构。 ... [详细]
  • 云原生应用最佳开发实践之十二原则(12factor)
    目录简介一、基准代码二、依赖三、配置四、后端配置五、构建、发布、运行六、进程七、端口绑定八、并发九、易处理十、开发与线上环境等价十一、日志十二、进程管理当 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 关于我们EMQ是一家全球领先的开源物联网基础设施软件供应商,服务新产业周期的IoT&5G、边缘计算与云计算市场,交付全球领先的开源物联网消息服务器和流处理数据 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • {moduleinfo:{card_count:[{count_phone:1,count:1}],search_count:[{count_phone:4 ... [详细]
  • 像跟踪分布式服务调用那样跟踪Go函数调用链 | Gopher Daily (2020.12.07) ʕ◔ϖ◔ʔ
    每日一谚:“Acacheisjustamemoryleakyouhaven’tmetyet.”—Mr.RogersGo技术专栏“改善Go语⾔编程质量的50个有效实践” ... [详细]
  • [翻译]微服务设计模式5. 服务发现服务端服务发现
    服务之间需要互相调用,在单体架构中,服务之间的互相调用直接通过编程语言层面的方法调用就搞定了。在传统的分布式应用的部署中,服务地 ... [详细]
  • centos php部署到nginx 404_NodeJS项目部署到阿里云ECS服务器全程详解
    本文转载自:http:www.kovli.com20170919ecs-deploy作者:Kovli本文详细介绍如何部署NodeJS项目到阿里云ECS上, ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 提示信息_局域网内互发提示信息
    本文由编程笔记#小编为大家整理,主要介绍了局域网内互发提示信息相关的知识,希望对你有一定的参考价值。【局域网内互发提示信息】准备工作:1.rege ... [详细]
  • 用聪明的方式学习 Vim
    来自量子位Vim难学难用?但事实是,它依旧受许多程序员的欢迎。或许,只是你的「打开方式」不对。最近,在GitHub上便出现了 ... [详细]
  • Scarp框架需求获取网页的url下载网页内容(Downloader下载器)定位元素位置,获取特定的信息(Spiders蜘蛛)存储信息(ItemPipeline,一条一条从管里走) ... [详细]
author-avatar
猪可夫司机
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有