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.6
    container_name: zookeeper
    ports:
      - "2181:2181"

  kafka:
    image: wurstmeister/kafka:2.13-2.7.0
    container_name: kafka
    ports:
      - "9092:9092"
    environment:
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT
      KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
    depends_on:
      - zookeeper

  flink-jobmanager:
    image: flink:1.13.2
    container_name: flink-jobmanager
    ports:
      - "8081:8081"
    environment:
      - JOB_MANAGER_RPC_ADDRESS=flink-jobmanager
    command: jobmanager
    depends_on:
      - kafka

  flink-taskmanager:
    image: flink:1.13.2
    container_name: flink-taskmanager
    depends_on:
      - flink-jobmanager
    environment:
      - JOB_MANAGER_RPC_ADDRESS=flink-jobmanager
    command: taskmanager

  clickhouse:
    image: yandex/clickhouse-server:latest
    container_name: clickhouse
    ports:
      - "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

访问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。这种方式不仅简化了环境配置,还提高了服务管理的灵活性和效率。

相关推荐
Hello.Reader19 小时前
Flink ZooKeeper HA 实战原理、必配项、Kerberos、安全与稳定性调优
安全·zookeeper·flink
金刚猿20 小时前
01_虚拟机中间件部署_root 用户安装 docker 容器,配置非root用户权限
docker·中间件·容器
JH_Kong21 小时前
解决 WSL 中 Docker 权限问题:从踩坑到完整修复
docker·容器
忆~遂愿21 小时前
GE 引擎与算子版本控制:确保前向兼容性与图重写策略的稳定性
大数据·开发语言·docker
Hello.Reader1 天前
Flink 使用 Amazon S3 读写、Checkpoint、插件选择与性能优化
大数据·flink
ask_baidu1 天前
KafkaUtils
kafka·bigdata
Hello.Reader1 天前
Flink 对接 Google Cloud Storage(GCS)读写、Checkpoint、插件安装与生产配置指南
大数据·flink
Hello.Reader1 天前
Flink Kubernetes HA(高可用)实战原理、前置条件、配置项与数据保留机制
贪心算法·flink·kubernetes
洛豳枭薰1 天前
消息队列关键问题描述
kafka·rabbitmq·rocketmq
70asunflower1 天前
Emulation,Simulation,Virtualization,Imitation 的区别?
linux·docker