第一步:首先下载Zookeeper的镜像文件:

从仓库中pull 这个zookeeper镜像:docker pull jplock/zookeeper:3.4.8

然后docker images查看该镜像:

最后一个可以看出镜像文件已经下载下来了;

第二步:运行这个镜像文件,即启动一个Zookeeper的容器:docker run -t --name zookeeper1 jplock/zookeeper:3.4.8

会出现如下的信息,说明在启动容器

当光标停止后,按Ctrl+C,然后通过docker ps -a来查看容器的信息。

第三步:进入Zookeeper容器中,并修改其配置信息。

3.1、进入容器:sudo docker exec -it ce1ca3255bf9 /bin/bash  (ce1ca3255bf9 为容器的id)

通过ls命令来查看ZooKeeper容器下有哪些目录和文件,发现和我们平时的操作系统上是一样的。

圈起来的地方表示我们已经进入了容器了。

3.2、ps命令来查看容器中的进程运行情况;

第四步:修改ZooKeeper的配置文件;/opt/zooleeper/conf/zoo.cfg

4.1、通过如下命令: vi conf/zoo.cfg 来修改配置文件:

如上图所示,在clientPort=2181下面添加一行:server.1=127.0.0.1:2888:3888

"server.id=host:port:port"标识了不同的ZooKeeper服务器的配置。用户可以从"server.id=host:port:port"中读取相关的配置信息。

参数中,host和port比较直观,id表示的是不同的服务器。每台机器使用三个端口,分别是 clientPort:2181; port:2888; port:3888。其中2888端口是进行leader选举的端口,而3888端口则是组成ZooKeeper服务的机器之间的通信端口。

4.2、创建data目录(在dataDir=/tmp/zookeeper目录下) 以及一个myid文件。vi myid

然后在myid里面输入一个1,后保存。1就是id的值。

最后重启zkServer.sh 就安装好了。

bin/zkServer.sh restart

这时候ZooKeeper重启成功了,另外一定要注意的是:zookeeper使用的端口有2181,2888,3888 所以要在centos7中开启这些端口,首先exit命令退出容器;

开启端口,下面三行命令必须是手动敲进去,好像复制进去的系统不识别,至少我是这样的。

firewall-cmd -–zone=public –-add-port=2181/tcp –-permanent 
firewall-cmd -–zone=public –-add-port=2888/tcp –-permanent 
firewall-cmd -–zone=public –-add-port=3888/tcp –-permanent

–-zone #作用域

–-add-port=2181/tcp #添加端口,格式为:端口/通讯协议

–-permanent #永久生效,没有此参数重启后失效

重启防火墙

firewall-cmd –-reload

Docker环境下如何安装Zookeeper的更多相关文章

  1. windows环境下,安装zookeeper~

    1.   概述 ZooKeeper是Hadoop的正式子项目,它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护.名字服务.分布式同步.组服务等.ZooKeeper的目标就是封装好复杂 ...

  2. docker环境下elasticsearch安装ik和拼音分词

    elasticsearch拼音分词地址:https://github.com/medcl/elasticsearch-analysis-pinyin/releases 在elasticsearch下面 ...

  3. docker环境下solrcloud+zookeeper集群部署教程

    前言:两个月前的16年11月份完成的配置,使用的solr6.1和zookeeper3.4,刚刚写成blog,目前版本可能有小版本的变化. 本例完成结果为:在docker环境下部署solrcloud集群 ...

  4. Elasticsearch Docker环境下安装

    Elasticsearch Docker环境下安装 Daemon镜像配置的是https://registry.docker-cn.com Linux:vi /etc/docker/daemon.jso ...

  5. Nginx系列(8)- Nginx安装 | Docker环境下部署

    Docker环境下部署Nginx https://www.cnblogs.com/gltou/p/15186971.html

  6. Ubuntu环境下Anaconda安装TensorFlow并配置Jupyter远程访问

    本文主要讲解在Ubuntu系统中,如何在Anaconda下安装TensorFlow以及配置Jupyter Notebook远程访问的过程. 在官方文档中提到,TensorFlow的安装主要有以下五种形 ...

  7. Docker环境下的Mysql8 实现主从数据库数据同步方案

    本文记录下通过MySQL Replication在Docker环境下,通过多个容器 实现数据库主从配置. MySQL Replication就不多解释了,简单说就是MySQL非常出色的一个功能,该功能 ...

  8. Docker环境下eShopOnContainers部署

    从头开始学eShopOnContainers--Visual Studio 2017环境配置 https://www.cnblogs.com/dusthunter/p/9973815.html 一.安 ...

  9. Hyperledger fablic 1.0 在centos7环境下的安装与部署和动态增加节点

    Hyperledger fablic 1.0 在centos7环境下的安装与部署和动态增加节点 一.安装docker 执行代码如下: curl -sSL https://get.daocloud.io ...

随机推荐

  1. 谈谈Oracle dba_free_space

    谈谈Oracle dba_free_space 博客分类: ORACLE管理 OracleSQLC#C++C  顾名思义,dba_free_space指的是Oracle还有多少表空间剩余空间,其视图结 ...

  2. 登陆页面改为SSO验证

    登陆页面改为SSO验证 单点登录(SSO,single sign-on)是一个会话或用户身份验证过程,用户只需要登录一次就可以访问所有相互信任的应用系统,二次登录时无需重新输入用户名和密码.简化账号登 ...

  3. C++ const关键字用法详解

    1const char*, char const*, char*const的区别问题几乎是C++面试中每次都会有的题目. 事实上这个概念谁都有只是三种声明方式非常相似很容易记混. Bjarne在他的T ...

  4. printf code

    printf背后的故事 2014-01-14 21:54 by Florian, 41 阅读, 0 评论, 收藏, 编辑 printf背后的故事 说起编程语言,C语言大家再熟悉不过.说起最简单的代码, ...

  5. RabbmitMQ集群搭建流程

    参考资料 1.rabbmitMQ集群搭建http://my.oschina.net/guol/blog/186445http://blog.ftofficer.com/2010/03/translat ...

  6. winform动态的文字效果

    效果图如下

  7. 使用MVC4,Ninject,EF,Moq,构建一个真实的应用电子商务SportsStore

    05 2013 档案 使用MVC4,Ninject,EF,Moq,构建一个真实的应用电子商务SportsStore(一) 摘要: 完成SportsStore电子商务平台,你将学会: 1.使用MVC4开 ...

  8. Python多线程的创建,相关函数和守护线程的理解

    一:多线程的创建 threading库创建线程有两种方式,函数式和继承式    1)函数式 def func(): print 'Starting' print 'Ending' t=threadin ...

  9. 代码重构方向原则指导(转载 cnblogs)

    英文原文:Hill Climbing (Wonkish)   重构是一种对软件进行修改的行为,但它并不改变软件的功能特征,而是通过让软件程序更清晰,更简洁和更条理来改进软件的质量.代码重构之于软件,相 ...

  10. Oracle常用语句记录

    交集/差集/合集 select * from tb_a intersect minus union all select * from tb_b 条件分支 decode() 例如:搜索条件没有手机就查 ...