Deploy a cluster on Docker

要在 Docker 上部署一个Pulsar 集群,请完成以下步骤:

  1. 部署ZooKeeper集群(可选)
  2. 初始化集群元数据
  3. 部署 Bookeeper 集群
  4. 部署一个或多个Pulsar代理

Prepare

若要在 Docker 上运行 Pulsar ,您需要为每个 Pulsar 组件创建一个容器:ZooKeeper, BookKeeper 和 broker。 您可以在 Docker Hub上单独拉取ZooKeeper和 BookKeeper的镜像, 并拉取 Pulsar镜像 给broker。 您也可以单独只拉取一个 Pulsar 镜像 并使用此镜像创建三个容器。 本教程以第二个选项作为例子。

拉取一个 Pulsar 镜像

您可以使用以下命令从 Docker Hub 拉取一个 Pulsar 镜像。

  1. docker pull apachepulsar/pulsar-all:latest

创建三个容器

为ZooKeeper、BookKeeper和broker创建容器。 在此示例中,他们被分别命名为 zookeeper, bookkeeperbroker。 你可以用 --name 参数给它们命名。 默认情况下,容器名称是随机创建的。

  1. docker run -it --name bookkeeper apachepulsar/pulsar-all:latest /bin/bash
  2. docker run -it --name zookeeper apachepulsar/pulsar-all:latest /bin/bash
  3. docker run -it --name broker apachepulsar/pulsar-all:latest /bin/bash

创建网络

若要在 Docker 上部署一个 Pulsar 集群,你需要创建 network 并将 ZooKeeper,BookKeeper 和 broker 容器连接到这个网络。 以下命令创建网络 pulsar:

  1. docker network create pulsar

连接容器到网络

使用下面命令将 ZooKeeper、BookKeeper 和 broker 的容器连接到 pulsar 网络。

  1. docker network connect pulsar zookeeper
  2. docker network connect pulsar bookkeeper
  3. docker network connect pulsar broker

要检查容器是否已成功连接到网络,请输入 docker network inspect pulsar 命令。

关于如何部署 ZooKeeper 集群、BookKeeper 集群和 broker 的细节,请参阅 在裸机上部署一个集群