To deploy a Pulsar cluster on Docker, complete the following steps:
To run Pulsar on Docker, you need to create a container for each Pulsar component: ZooKeeper, BookKeeper and broker. You can pull the images of ZooKeeper and BookKeeper separately on Docker Hub, and pull a Pulsar image for the broker. You can also pull only one Pulsar image and create three containers with this image. This tutorial takes the second option as an example.
You can pull a Pulsar image from Docker Hub with the following command.
docker run -it apachepulsar/pulsar-all:latest
Create containers for ZooKeeper, BookKeeper and broker. In this example, they are named as zookeeper
, bookkeeper
and broker
respectively. You can name them as you want with the --name
flag. By default, the container names are created randomly.
docker run -it --name bookkeeper apachepulsar/pulsar-all:latest /bin/bash docker run -it --name zookeeper apachepulsar/pulsar-all:latest /bin/bash docker run -it --name broker apachepulsar/pulsar-all:latest /bin/bash
To deploy a Pulsar cluster on Docker, you need to create a network
and connect the containers of ZooKeeper, BookKeeper and broker to this network. The following command creates the network pulsar
:
docker network create pulsar
Connect the containers of ZooKeeper, BookKeeper and broker to the pulsar
network with the following commands.
docker network connect pulsar zookeeper docker network connect pulsar bookkeeper docker network connect pulsar broker
To check whether the containers are successfully connected to the network, enter the docker network inspect pulsar
command.
For detailed information about how to deploy ZooKeeper cluster, BookKeeper cluster, brokers, see deploy a cluster on bare metal.