详解使用docker搭建kafka环境

 更新时间:2017年03月25日 10:06:40   作者:XuXinkun  
本篇文章主要介绍了详解使用docker搭建kafka环境 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

Requirements

最近学习了下kafka,为方便搭建环境,使用docker进行部署。

需要首先安装docker的环境。要求操作系统是linux的64位系统。

docker的安装(适于rpm/deb安装):

curl -fsSL https://get.docker.com/ | sh

docker-compose的安装:

curl -L https://github.com/docker/compose/releases/download/1.7.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

Kafka Image

Dockerfile

Dockerfile是用于描述镜像的制作过程。根据kafka的教程,编写对应的Dockerfile。

基础镜像使用了centos6的版本,当然根据需要也可以使用其他的版本。

FROM index.alauda.cn/tutum/centos:centos6
RUN yum install -y wget
RUN wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u91-b14/jdk-8u91-linux-x64.rpm
RUN rpm -ivh jdk-8u91-linux-x64.rpm
RUN mkdir -p /kafka && cd /kafka && wget http://mirrors.cnnic.cn/apache/kafka/0.9.0.0/kafka_2.11-0.9.0.0.tgz && tar -xzf kafka_2.11-0.9.0.0.tgz && cd kafka_2.11-0.9.0.0
WORKDIR /kafka/kafka_2.11-0.9.0.0

有了这样的一个Dockerfile,可以在本地,也可以使用公有云进行镜像制作。在本地制作的话,可以使用该命令:

docker build -t index.alauda.cn/xuxinkun/kafka .

我使用了灵雀云的镜像服务进行build。

Docker-Compose

有了镜像之后,现在需要对服务进行启动。这里使用了docker的编排服务docker-compose,进行编排。

kafka主要包括两个服务,zookeeper和kafka。所以需要分别启动两个服务。这里将两个服务直接使用宿主机的网络。编写docker-compose.yaml如下:

zk:
 image: index.alauda.cn/xuxinkun/kafka
 net: host
 stdin_open: true
 tty: true
 command: bin/zookeeper-server-start.sh config/zookeeper.properties
kafka:
 image: index.alauda.cn/xuxinkun/kafka
 net: host
 stdin_open: true
 tty: true
 command: bin/kafka-server-start.sh config/server.properties

启动服务

现在可以一条命令启动所有的服务:

[root@node1 Dockerfile]# docker-compose up -d
Creating dockerfile_kafka_1
Creating dockerfile_zk_1

查看服务状态

对服务状态进行查看。

[root@node1 Dockerfile]# docker-compose ps
    Name            Command        State  Ports 
----------------------------------------------------------------------
dockerfile_kafka_1   bin/kafka-server-start.sh ...  Up      
dockerfile_zk_1     bin/zookeeper-server-start ...  Up 

当然也可以使用docker ps -a进行查看。

停止服务

[root@node1 Dockerfile]# docker-compose stop zk kafka
Stopping dockerfile_kafka_1 ... done
Stopping dockerfile_zk_1 ... done

删除服务

[root@node1 Dockerfile]# docker-compose rm zk kafka

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 如何让docker中的mysql启动时自动执行sql语句

    如何让docker中的mysql启动时自动执行sql语句

    这篇文章主要介绍了让docker中的mysql启动时自动执行sql的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • Docker不同网段下的容器互联的实现

    Docker不同网段下的容器互联的实现

    本文主要介绍了Docker不同网段下的容器互联的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • 使用OpenSSL生成Kubernetes证书的介绍

    使用OpenSSL生成Kubernetes证书的介绍

    今天小编就为大家分享一篇关于使用OpenSSL生成Kubernetes证书的介绍,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • IDEA 配置Docker的过程

    IDEA 配置Docker的过程

    这篇文章主要介绍了IDEA 配置Docker的过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • docker测试时候命令无法补全的解决方法

    docker测试时候命令无法补全的解决方法

    因为最近在学习使用Docker,所以出现了好多的问题,昨天遇到的一个问题是在docker测试时候发现命令无法补全,通过查找资料最后解决了,现在将方法分享给有需要的人,大家可以参考学习。
    2016-11-11
  • 使用docker-compose部署mysql的完整步骤

    使用docker-compose部署mysql的完整步骤

    Compose是用于定义和运行多容器Docker应用程序的工具,通过Compose可以使用YAML文件来配置应用程序的服务,下面这篇文章主要给大家介绍了关于使用docker-compose部署mysql的相关资料,需要的朋友可以参考下
    2022-08-08
  • 一文学会docker 安装mysql的方法

    一文学会docker 安装mysql的方法

    这篇文章主要介绍了docker 安装 mysql的方法,通过使用docker命令下载mysql接着使用docker命令创建实例并启动,对docker 安装 mysql相关知识感兴趣的朋友一起看看吧
    2022-04-04
  • 详解Docker Compose配置文件参数

    详解Docker Compose配置文件参数

    Compose是一个用于定义和运行多容器Docker的工具,本文主要介绍了Docker Compose配置文件参数,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • 快速安装Docker详细步骤教程

    快速安装Docker详细步骤教程

    这篇文章主要为大家详细的介绍了快速安装Docker的详细步骤教程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03
  • docker启动ES内存溢出的解决方案

    docker启动ES内存溢出的解决方案

    这篇文章主要介绍了docker启动ES内存溢出的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03

最新评论