当前位置: 首页 > ai >正文

Docker环境安装Kafka、Flink、ClickHouse镜像

在大数据处理和实时数据分析的场景中,Kafka、Flink和ClickHouse是常用的工具。使用Docker来安装和管理这些服务可以简化环境配置和部署。本文将详细介绍如何在Docker环境下安装Kafka、Flink和ClickHouse镜像。

一、准备工作

在开始之前,请确保已经安装了Docker和Docker Compose。可以使用以下命令检查安装情况:

docker --version
docker-compose --version

二、编写Docker Compose文件

创建一个新的目录来存放Docker Compose文件,例如 bigdata-docker

mkdir bigdata-docker
cd bigdata-docker

在该目录下创建一个名为 docker-compose.yml的文件,并添加以下内容:

version: '3.8'services:zookeeper:image: wurstmeister/zookeeper:3.4.6container_name: zookeeperports:- "2181:2181"kafka:image: wurstmeister/kafka:2.13-2.7.0container_name: kafkaports:- "9092:9092"environment:KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXTKAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXTKAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1depends_on:- zookeeperflink-jobmanager:image: flink:1.13.2container_name: flink-jobmanagerports:- "8081:8081"environment:- JOB_MANAGER_RPC_ADDRESS=flink-jobmanagercommand: jobmanagerdepends_on:- kafkaflink-taskmanager:image: flink:1.13.2container_name: flink-taskmanagerdepends_on:- flink-jobmanagerenvironment:- JOB_MANAGER_RPC_ADDRESS=flink-jobmanagercommand: taskmanagerclickhouse:image: yandex/clickhouse-server:latestcontainer_name: clickhouseports:- "8123:8123"- "9000:9000"- "9009:9009"

三、启动服务

在 docker-compose.yml文件所在的目录中,运行以下命令来启动所有服务:

docker-compose up -d

该命令会在后台启动Kafka、Flink和ClickHouse服务。可以使用以下命令查看容器的运行状态:

docker-compose ps

四、验证安装

1. 验证Kafka

进入Kafka容器并创建一个主题:

docker-compose exec kafka /bin/sh
kafka-topics.sh --create --topic test-topic --bootstrap-server kafka:9092 --replication-factor 1 --partitions 1
kafka-topics.sh --list --bootstrap-server kafka:9092
2. 验证Flink

访问Flink的Web UI,查看任务管理界面:

http://localhost:8081
3. 验证ClickHouse

进入ClickHouse容器并执行SQL命令:

docker-compose exec clickhouse /bin/bash
clickhouse-client -m
CREATE DATABASE test;
SHOW DATABASES;

五、总结

通过Docker Compose,可以轻松地在本地环境中部署和管理Kafka、Flink和ClickHouse。这种方式不仅简化了环境配置,还提高了服务管理的灵活性和效率。

http://www.xdnf.cn/news/13359.html

相关文章:

  • 海外打车代驾app评价系统框架搭建
  • 获取RadioButton的text,更换textview的text
  • C++笔记-C++11(二)
  • 【Unity优化】提高热更新和打包速度
  • Centos与RockLinux设置静态ip
  • 数据库管理与高可用-PostgreSQL日常维护
  • MongoDB入门指南:环境安装与基本操作
  • QGIS新手教程4:相交、缓冲区与合并操作详解(含实战案例)
  • 多头与空头:市场博弈的两面
  • 【2025最新】Adobe Illustrator下载保姆级安装教程(附官方下载链接)
  • ThinkPad 交换 Ctrl 键和 Fn 键
  • Uncaught (in promise) TypeError: Cannot read properties of null (reading ‘xxx’)
  • RK3588开发笔记-GNSS-RTK模块调试
  • YOLO-World 部署踩坑记录
  • Linux611 libvirtb ;FTP vsftpd.conf部分配置文件
  • React 元素的生命周期
  • 从硬件视角审视Web3安全:CertiK CTO主持Proof of Talk圆桌论坛
  • GO 入门小项目-博客-结合Gin Gorm
  • 【面板数据】中国与世界各国农产品进出口贸易数据(2015-2024年)
  • 国内外数据要素标准有何不同?
  • K8S项目需求分析
  • 火山引擎发布豆包大模型 1.6 与视频生成模型 Seedance 1.0 pro
  • ABP vNext + Spark on Hadoop:实时流处理与微服务融合
  • 嵌入式学习笔记 - C语言访问地址的方式,以及指针的进一步理解
  • JMeter 处理 UTF-16 转 UTF-8 乱码问题解决方案(deepseek)
  • AnythingLLM配置Milvus后,上传文档提示向量数据库标识符错误的解决办法
  • 鹰盾Win播放器作为专业的视频安全解决方案,除了硬件翻录外还有什么呢?
  • 微信小程序分享带参数地址
  • UFS-Ver3.1-第八章
  • 6.11 打卡