docker 部署 Flink 和 Kafka

1.Flink

拉取镜像(自己选择版本):

docker pull flink:1.13.6-scala_2.12-java8

创建网络:

docker network create flink-network

运行 JobManager:

docker run -dit --rm --name=jobmanager --network flink-network --publish 8081:8081 --env FLINK_PROPERTIES="jobmanager.rpc.address: jobmanager" flink:1.13.6-scala_2.12-java8 jobmanager

运行 TaskManager:

docker run -dit --rm --name=taskmanager --network flink-network --env FLINK_PROPERTIES="jobmanager.rpc.address: jobmanager" flink:1.13.6-scala_2.12-java8 taskmanager

2.Kafka

拉取镜像:

docker pull wurstmeister/zookeeper
docker pull wurstmeister/kafka

启动 Zookeeper:

docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper

启动 Kafka:

(其中 192.168.0.102 是本机的 ip 地址,注意根据自己的情况修改)

docker run -d --name kafka --publish 9092:9092 --link zookeeper --env KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 --env KAFKA_ADVERTISED_HOST_NAME=192.168.0.102 --env KAFKA_ADVERTISED_PORT=9092 --volume /etc/localtime:/etc/localtime wurstmeister/kafka:latest

以下步骤需要进入到 docker 容器中:

cd /opt/kafka_2.13-2.8.1/bin

新建 topic(此处名为 clicks):

./kafka-topics.sh --create --zookeeper 192.168.0.102:2181 --replication-factor 1 --partitions 1 --topic clicks

生产消息:

./kafka-console-producer.sh --broker-list 192.168.0.102:9092 --topic clicks

打开另一个窗口,同样进入 docker 容器中的 /opt/kafka_2.13-2.8.1/bin:

消费消息:

./kafka-console-consumer.sh --bootstrap-server 192.168.0.102:9092 --topic clicks --from-beginning

你可能感兴趣的:(大数据,kafka,docker,flink)