docker下使用disconf:极速体验

前面的文章中我们实战了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的使用做进一步了解。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数据结构笔记

scrapy爬虫框架(一):scrapy框架简介

安装完成后,python会自动将 scrapy命令添加到环境变量中去,这时我们就可以使用 scrapy命令来创建我们的第一个 scrapy项目了。

1574
来自专栏V站

PHP丨实现可判断类型限制大小的原生文件上传,图片上传等

1552
来自专栏运维一切

私有镜像库的验证问题 原

解决方案完整的例子 https://docs.quay.io/issues/quay-mesos.html https://mesosphere.github....

562
来自专栏情情说

git分支管理和工作流规范:具体规范

前一篇介绍了 git相关的概念,我们可以查看文件的状态,在各个状态之间进行切换,可以创建和合并分支,通过rebase还可以整理自己的提交历史。通过这些命令和操作...

3586
来自专栏Jerry的SAP技术分享

Fedora CentOS Red Hat中让vim支持语法高亮设置

Fedora / CentOS / Red Hat这三个系统里默认的vi是没有语法高亮显示的,白色的字体看起来很不舒服。

671
来自专栏散尽浮华

linux下rsync和tar增量备份梳理

前面总结过一篇全量备份/增量备份/差异备份说明,下面介绍下linux下rsync和tar两种增量备份的操作记录: 1)rsync备份 rsync由于本身的特性,...

30510
来自专栏木头编程 - moTzxx

oracle 10g(服务端+客户端,支持win7、win8) 资源分享

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/de...

1253
来自专栏前端小叙

wordpress主题升级之后返回到原来版本主题的方法

wordpress后台经常可以看到主题提示升级,但是发现升级之后样式,颜色等都变了,不是以前的样子了,这时候如果想要返回到以前版本,前提,必须以前版本有备份。

1042
来自专栏技术小黑屋

Android中系统设置中的清除数据究竟会清除哪些数据

What will be removed If you click Clear Data Button in the System Application

1031
来自专栏别先生

'mysql' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

1、C:\Users\Aiyufei>mysql -h 127.0.0.1 -u root 'mysql' 不是内部或外部命令,也不是可运行的程序或批处理文件。...

743

扫码关注云+社区