docker下使用disconf:极速体验

标签: java docker disconf
2089人阅读 评论(2) 收藏 举报
分类:

前面的文章中我们实战了docker下搭建disconf环境,现在我们学习如何使用disconf提供的动态配置服务,本章我们不深入研究,而是以最快的速度体验一个java做的demo,此demo的功能是每隔5秒输出一组来自disconf的配置信息,内容是一个ip地址和一个端口,如果在disconf上改变了这个配置信息的内容,这个demo会立即收到配置改变的通知,并且再次输出的时候已经是最新的配置了;

下面开始极速体验吧:

新建一个docker-compose.yml文件,内容如下:

version: '2'
services:
  disconf_redis_1: 
    image: daocloud.io/library/redis
    restart: always
  disconf_redis_2: 
    image: daocloud.io/library/redis
    restart: always
  disconf_zookeeper: 
    image: zookeeper:3.3.6
    restart: always
  disconf_mysql: 
    image: bolingcavalry/disconf_mysql:0.0.1
    environment:
      MYSQL_ROOT_PASSWORD: 123456
    restart: always
  disconf_tomcat: 
    image: bolingcavalry/disconf_tomcat:0.0.1
    links: 
      - disconf_redis_1:redishost001 
      - disconf_redis_2:redishost002
      - disconf_zookeeper:zkhost
      - disconf_mysql:mysqlhost
    restart: always
  disconf_nginx: 
    image: bolingcavalry/disconf_nginx:0.0.1
    links: 
      - disconf_tomcat:tomcathost 
    ports: 
      - "80:80" 
    restart: always
  disconf_java: 
    image: bolingcavalry/disconf_standalone_demo:0.0.1
    links: 
      - disconf_nginx:nginxhost
      - disconf_zookeeper:zkhost
    restart: always  

打开控制台,在上述文件目录下执行:

docker-compose up -d

由于要去hub.docker.com上下载六个镜像,可能会一段等待下载的时间,下载结束后会自动创建七个容器,如下图:

这里写图片描述

上图红框中的就是我们今天体验demo的容器名称(注意:不同电脑上容器的前缀后缀的数字可能不一样),执行以下命令进入到demo容器中:

docker exec -it 05_disconf_java_1 /bin/bash

进入容器后,进入/usr/local/work目录下,执行./start.sh命令启动demo,控制台输出如下图:

这里写图片描述

如上图红框所示,每隔五秒钟就会有输出一个配置信息,包括IP和端口,这些数据从何而来呢?

我们在浏览器上输入localhost可以打开disconf管理页面,用户名密码都是admin,登录成功后按照下图所示操作,就能看到这个demo里用到的配置信息:

这里写图片描述

接下来我们体验一下配置变化后,demo上被实时通知变化的效果,点击下图红框中的位置:

这里写图片描述

如下图,修改方式选择“输入文本“:

这里写图片描述

把配置文件的值改成另一个,如下图红框所示,改完再点击底部的“上传“按钮:

这里写图片描述

回到demo容器的控制台,如下图,可以看到点击上传按钮的同时,控制台输出了收到通知的信息(红框中的内容),并且输出的ip已经变成最新的了(篮框中的内容):

这里写图片描述

以上就是简单体验disconf效果的简易demo,可以发现disconf的配置信息能让服务使用方实时感知和获取到,对开发和运营来说都是个很有用的工具,本章只是初步体验,下一章我们会通过代码对disconf的使用做进一步了解。

查看评论

使用Docker快速打包和部署运行Disconf

Docker-Disconf Docker-Disconf是本人学习Docker后,尝试使用Docker解决Disconf打包和运行问题的作品。Disconf是分布式配置管理平台(Distribute...
  • gongxsh00
  • gongxsh00
  • 2016-04-16 09:18:08
  • 3387

2 springboot项目集成使用disconf,基于docker环境

上一篇我们完成了disconf服务端的环境搭建,这一篇我们来看看客户端springboot如何继承disconf,最终在docker下运行。假定你已经在本机搭建好了disconf的web端环境,并已经...
  • tianyaleixiaowu
  • tianyaleixiaowu
  • 2017-10-16 15:03:12
  • 14011

docker创建disconf镜像并应用

由于disconf的环境比较复杂,不适合使用dockerfile的方式进行创建,我们使用commit的方式进行创建。 启动容器 选择一个ubuntu:14.04的基础镜像,进入镜像(sudo doc...
  • JThink_
  • JThink_
  • 2016-02-16 11:10:06
  • 1396

Docker搭建disconf环境,三部曲之三:细说搭建过程

详细分析如何在构建disconf环境所需的镜像和docker-compose配置
  • boling_cavalry
  • boling_cavalry
  • 2017-05-03 13:00:31
  • 1585

Disconf入门指南(1)

在分布式系统开发中,尤其是有众多的开发团队协作开发时,对底层平台和中间件平台的统一管理、统一调度是保障整个团队有序开发、协同处理的关键。常见的开源配置中心有Diamond(阿里巴巴开源)、DisCon...
  • fiboliu
  • fiboliu
  • 2016-03-17 11:29:14
  • 20608

disconf-注解式分布式配置

disconf-web配置 在disconf-web上点击新建app创建一个新的app,这里假设app名字为:app_test 在disconf-web上点击新建配置文件新建一个配置文件,APP选择...
  • JThink_
  • JThink_
  • 2016-01-21 17:44:15
  • 9279

Disconf使用简单Demo

上一篇博客完成了Disconf的搭建过程,搭建完成后就需要测试一下是否能真的投入使用,这篇博客就介绍一个小Demo,测试一下Disconf是否能连接上。 创建配置文件   在敲Demo之前,需...
  • u013038861
  • u013038861
  • 2017-04-02 23:30:52
  • 2275

Disconf实践指南:使用篇

在上一篇文章Disconf实践指南:安装篇介绍了如何在本地搭建Disconf环境,下面我们介绍如何在项目中使用Disconf。由于某些功能特性对源码做了修改,所以在官方文档并没有提及。 环境基于m...
  • u011116672
  • u011116672
  • 2017-06-18 11:10:39
  • 5819

Disconf介绍

Disconf 可以为各种业务平台提供统一的配置管理服务。 支持配置(配置项+配置文件)的分布式化管理 配置发布统一化 极简的使用方式(注解式编程 或 XML代码无代码侵入模式) 低...
  • fayeyiwang
  • fayeyiwang
  • 2016-08-03 15:41:35
  • 743

java - disconf分布式管理-配置文件篇

以source项目为例 1、pom.xml文件引入disconf依赖jar包 com.baidu.disconf disconf-client 2.6.35 ...
  • LeavesMi
  • LeavesMi
  • 2016-09-21 11:43:35
  • 6341
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 15万+
    积分: 2826
    排名: 1万+
    博客专栏
    最新评论