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

相关推荐
bloglin9999933 分钟前
docker logs 如何一直监听日志输出
运维·docker·容器
说实话起个名字真难啊1 小时前
Docker 入门之网络基础
网络·docker·php
半桶水专家1 小时前
kafka数据删除策略详解
分布式·kafka
Jackyzhe2 小时前
从零学习Kafka:位移与高水位
分布式·学习·kafka
❀͜͡傀儡师2 小时前
使用 Docker 部署 Neko 自托管虚拟浏览器(Firefox)
docker·容器·firefox
dinl_vin2 小时前
Flink 实时计算引擎深度解析
大数据·flink
鬼先生_sir2 小时前
SpringCloud-Stream + RocketMQ/Kafka
spring cloud·kafka·rocketmq·stream
0xDevNull2 小时前
Linux Docker 安装与使用详细教程
linux·运维·docker
工具罗某人2 小时前
docker compose 部署MySQL InnoDB Cluster + Router 高可用集群-亲测可用
mysql·docker·容器
lifallen2 小时前
Flink Agents:Memory 层级分析 (Sensory, Short-Term, Long-Term)
java·大数据·人工智能·语言模型·flink