docker:安装zookeeper单机版

    xiaoxiao2023-10-25  169

    docker search zookeeper

    1.创建本地目录(让容器中的superset挂载本地机的配置文件)

    mkdir /opt/docker/zookeeper/data/ -p  (见最后这个目录映射的内容)

    镜像下载

    hub.docker.com 上有不少 ZK 镜像, 不过为了稳定起见, 我们就使用官方的 ZK 镜像吧. 首先执行如下命令:

    docker pull zookeeper

     

    当出现如下结果时, 表示镜像已经下载完成了:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    >>> docker pull zookeeper

    Using default tag: latest

    latest: Pulling from library/zookeeper

     

    e110a4a17941: Pull complete

    a696cba1f6e8: Pull complete

    bc427bd93e95: Pull complete

    c72391ae24f6: Pull complete

    40ab409b6b34: Pull complete

    d4bb8183b85d: Pull complete

    0600755f1470: Pull complete

    Digest: sha256:12458234bb9f01336df718b7470cabaf5c357052cbcb91f8e80be07635994464

    Status: Downloaded newer image for zookeeper:latest

      

    ZK 镜像的基本使用

    启动 ZK 镜像

    1

    >>> docker run --name my_zookeeper -d zookeeper:latest

      

    这个命令会在后台运行一个 zookeeper 容器, 名字是 my_zookeeper, 并且它默认会导出 2181 端口. 接着我们使用:

    1

    docker logs -f my_zookeeper

      

    这个命令查看 ZK 的运行情况, 输出类似如下内容时, 表示 ZK 已经成功启动了:

     

     

    但是并没有跟宿主机映射成功:

    删掉容易重建:

     

    新建容器执行:

    docker run -d -p 2181:2181 -v /opt/docker/zookeeper/data/:/data/ --name=zookeeper --privileged zookeeper

     

     然后我在ide中改了zookeeper地址重新连接一下,发现可以了

    执行:

     docker run -it --rm --link my_zookeeper:zookeeper zookeeper zkCli.sh -server zookeeper

     

    查看一下我得服务注册上没有:

     

    运行命令:

    docker run -d -p 2181:2181 -v /opt/docker/zookeeper/data/:/data/ --name=zookeeper  --privileged zookeeper

    如果对 Docker 有过了解的话, 那么对上面的命令一定不会陌生了. 这个命令的含义是:

    启动一个 zookeeper 镜像, 并运行这个镜像内的 zkCli.sh 命令, 命令参数是 "-server zookeeper"

    将我们先前启动的名为 my_zookeeper 的容器连接(link) 到我们新建的这个容器上, 并将其主机名命名为 zookeeper

     

    发现不能直接这样执行,应该执行:

    docker exec -it 590a923a5fcd /bin/bash 进入docker的zookeeper容器,找到zkCli.sh,执行./zkCli.sh

     查看已经注册上了:

     

    因为我是windows的虚拟机装linux,然后linux装容器,这里的地址192.168.56.1是哪里来的呢?

     

     我windows 是 192.168.124.12 无线局域网,linux 192.168.65.113 奇怪怎么是这个地址。

    但是我项目打jar包扔到linux后启动,在zookeeper容器的注册便是linux的地址192.168.65.113

    zkCli.sh 命令参考:

    https://blog.csdn.net/meng984611383/article/details/80492483 

    查看宿主机创建的目录:/opt/docker/zookeeper/data

    参考:

    https://www.cnblogs.com/kingkoo/p/8732448.html

    https://blog.csdn.net/xiaojin21cen/article/details/85028326

    https://blog.csdn.net/jiangyu1013/article/details/80856332

    最新回复(0)