在 CentOS 中安装 Kafka 并运行在 Docker 容器中,可以按照以下步骤操作:
-
安装 Docker:
首先需要在 CentOS 上安装 Docker。如果已经安装了 Docker,可以跳过这一步。sudo yum update -y sudo yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install -y docker-ce docker-ce-cli containerd.io sudo systemctl start docker sudo systemctl enable docker
-
拉取 Kafka Docker 镜像:
从 Docker Hub 上拉取 Kafka 的镜像。这里我们使用 Bitnami 提供的 Kafka 镜像。docker pull bitnami/kafka:latest
-
运行 Zookeeper:
Kafka 依赖 Zookeeper,所以我们需要先启动一个 Zookeeper 容器。docker run -d --name zookeeper-server --network=host -e ALLOW_ANONYMOUS_LOGIN=yes bitnami/zookeeper:latest
-
运行 Kafka:
启动 Kafka 容器,并将其连接到 Zookeeper。docker run -d --name kafka-server --network=host -e KAFKA_CFG_ZOOKEEPER_CONNECT=127.0.0.1:2181 -e ALLOW_PLAINTEXT_LISTENER=yes bitnami/kafka:latest
如果希望在不同的网络模式下运行,可以通过自定义网络进行连接,例如:
docker network create kafka-net docker run -d --name zookeeper-server --network=kafka-net -e ALLOW_ANONYMOUS_LOGIN=yes bitnami/zookeeper:latest docker run -d --name kafka-server --network=kafka-net -e KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper-server:2181 -e ALLOW_PLAINTEXT_LISTENER=yes bitnami/kafka:latest
-
验证安装:
你可以通过以下命令检查 Kafka 和 Zookeeper 是否正确运行:docker logs zookeeper-server docker logs kafka-server
如果需要进入 Kafka 容器进行进一步操作,可以使用:
docker exec -it kafka-server /bin/bash
-
测试 Kafka:
创建一个主题并测试消息发布和消费。创建主题:
docker exec kafka-server kafka-topics.sh --create --topic test-topic --bootstrap-server localhost:9092 --partitions 1 --replication-factor 1
发布消息:
docker exec -it kafka-server kafka-console-producer.sh --topic test-topic --bootstrap-server localhost:9092
消费消息:
docker exec -it kafka-server kafka-console-consumer.sh --topic test-topic --bootstrap-server localhost:9092 --from-beginning
通过以上步骤,你应该可以在 CentOS 上使用 Docker 安装并运行 Kafka。
网友评论