前言

结合博主之前写的一篇《kafka connector使用(单机手动启动版)》一起看

版本

kafka: confluentinc/cp-kafka:7.0.1
zookeeper: confluentinc/cp-zookeeper:7.0.1

思路

将该连接器做成一个镜像。

实现

一、制作镜像

Dockerfile

FROM confluentinc/cp-kafka:7.0.1
COPY connect-redis.jar /usr/share/java/connect-redis.jar
CMD ["connect-standalone","/etc/kafka/connect-standalone.properties","/etc/kafka/connect-redis-source.properties"]

将Dockerfile和超级jar放在一个文件夹下,docker build -t curtain/kafka-connector:7.0.1 .构建连接器镜像

二、编写docker-compose.yml

version: "3.0"
services:zookeeper:image: confluentinc/cp-zookeeper:7.0.1container_name: zookeeperrestart: alwaysports:- 2181:2181environment:ZOOKEEPER_CLIENT_PORT: 2181ZOOKEEPER_TICK_TIME: 2000ZOOKEEPER_SYNC_LIMIT: 2kafka:image: confluentinc/cp-kafka:7.0.1container_name: kafkaports:- 9092:9092environment:# client要访问的broker地址KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://服务器ip:9092KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092# 通过端口连接 zookeeperrestart: alwaysdepends_on:- zookeeperkafka-connector:image: curtain/kafka-connector:7.0.1container_name: kafka-connectorvolumes:- type: bindsource: ./connect-standalone.propertiestarget: /etc/kafka/connect-standalone.properties- type: bindsource: ./connect-redis-source.propertiestarget: /etc/kafka/connect-redis-source.propertiesrestart: alwaysdepends_on:- zookeeper- kafka

三、修改connect-standalone.properties

没有该文件的话,网上找一份。将bootstrap.servers里面的ip部分从localhost改成服务器的ip。

四、上传文件

镜像包docker-compose.ymlconnect-standalone.properties连接器配置文件上传到服务器同一个路径下。

五、加载镜像并启动

  1. 加载镜像:docker load < 镜像包.tar
  2. 启动镜像: docker-compose up -d

这样,kafka连接器就启动啦。

可能会遇到的问题

问题一: 默认写入到kafka的数据会包含一些额外的信息如:schema和payload,我们不想要这些额外的信息怎么办?
connect-standalone.properties配置文件中的key.converter.schemas.enablevalue.converter.schemas.enable设置为false即可
问题二:写入到kafka的数据多了一层双引号和json转义怎么去掉?
这个是因为默认配置的转换器类是org.apache.kafka.connect.json.JsonConverter加上你生成的SourceRecord对象里面的value和key值已经是一个String类型了。这样的话会将String类型的数据json化一遍,就会出现多了一层双引号加转义的情况。修改connect-standalone.properties配置文件中的key.convertervalue.converterorg.apache.kafka.connect.storage.StringConverter即可。

kafka connector使用(Docker一键启动版)相关推荐

  1. kafka一键启动集群

    我的kafka的3个节点是这样的. 启动kafka集群脚本 #!/bin/bash echo "kafka cluster start" ssh Desktop "sou ...

  2. 制作MySql5绿色免安装版(一键启动服务)

    制作MySql5绿色免安装版(一键启动服务) 前言 MySQL安装有镜像和免安装的,相比较而言免安装简单一下,但免安装使用命令初始化mysql服务会安装到C盘,本篇文章介绍一键启动服务绿色免安装,制作 ...

  3. Kafka、zookeeper集群一键启动、一键关闭

    在学习大数据的过程中,经常用到集群,软件的启停一个一个点击很麻烦 1.Kafka的一键启动和一键关闭(onekey路径下) 目录/export中新建onekey文件夹 mkdir onekey 进入文 ...

  4. 一键启动多应用(windows版)

    每次早上打开电脑都有一些必备应用要打开,每次都要一个一个找,一个一个打开太麻烦,也太浪费时间.人生还有更重要的事情要做,不能这么白白浪费,索性就写成了个一键启动器,一次麻烦,终生受益.不说了,开撸. ...

  5. pyinstaller安装_如何打包Python Web项目,实现免安装一键启动?

    一.现状Python 有诸多优秀的 Web 开发框架供我们使用,比如Django.Flask.Sanic.正常的情况下,我们基于这些 Web 框架开发好了网站,最终都会使用 Nginx 搭配 uWSG ...

  6. docker镜像启动后端口号是多少_RSS、智能家居、个人博客、维基百科……Docker 入门指南...

    如果你购买过 VPS 云主机,那么或多或少,你都可能听说过 Docker.如果你从未听说过 Docker,那么本文可能能够为你开启新世界. 利用 Docker,你能够非常轻松地部署各类服务,无论是个人 ...

  7. Docker超详细版教程通俗易懂 -之- 入门篇

    前言 学习Docker,你可以熟练的操作命令,能够把你的项目构建成Docker镜像! 是后端开发人员必备的技能!下面是自己的学习笔记,希望能帮助到需要的你! 特别感谢哔哩哔哩狂神:[狂神说Java]D ...

  8. Java面试复习---Docker(狂神版)

    Java面试复习---Docker(狂神版) 前言 Docker学习路径 Docker概述 Docker为什么出现? Docker的历史 Docker能干嘛 Docker安装 Docker的基本组成 ...

  9. docker部署python web应用_使用docker一键部署Web应用

    前几天借着部署一个小系统的机会尝试了一把docker,把Web应用,数据库,nginx统统都用docker管理.把打包好的代码扔到服务器上一键就部署好了,不需要考虑服务器的环境问题,简直不要太爽.但感 ...

最新文章

  1. Bootstrap之Carousel不能自动播放的解决办法(转)
  2. Atitit 图像处理的心得与疑惑 attilax总结
  3. php 两个二维数组怎么去重,php 二维数组怎么不去重合并
  4. 悉尼大学计算机录取要求,Q 同学_悉尼大学_计算机_录取成功案例分享
  5. ntp同步 mysql_解析Mysql 主从同步延迟原理及解决方案
  6. Android:学习路线总结,绝对干货
  7. android刷新时的圆形动画_Android自定义view渐变圆形动画
  8. 将object类型转换成时间,如果能转的话。
  9. 字符串中索引位置是什么意思_女孩子左手中指戴戒指什么意思 不同位置各有不同...
  10. Android简单实现百度地图显示及定位
  11. python中dtype是object是什么意思_dtype = object在创建numpy数组时意味着什么? - python代码 - 源码查...
  12. 阿里云mysql导出表,导出mysql表数据库
  13. aec一pc_什么是AEC声学回声消除器?
  14. 1-10000的素数 java_java实验题(1-10000之间的素数和)
  15. 【以太网硬件TCP/IP协议栈】硬件协议栈W5500应用
  16. 蛋白质组学研究的经典方法:双向电泳技术解读
  17. ArcGIS教程:ArcGIS中的图表是什么
  18. BUUCTF basic PikaChu AWD-Test1 Webug 4.0
  19. OpenCV学习-P44 角点检测
  20. [docker] 解决 docker 部署访问提示 Empty reply from server,但是本地运行能够正常访问

热门文章

  1. helm模板开发-流程控制、作用域、循环
  2. android微信7,微信7.0安卓版之初体验
  3. httpmember.php,PHPMyWind 5.1 /member.php 远程密码修改漏洞
  4. phpmywind 查询结果生成csv文件并下载到本地
  5. Python-OpenCV 图像加权混合(滤色, 叠加, 柔光, 强光)
  6. win7安装OpenCV:计算机中丢失opencv_world300d.dll
  7. Java 练习之回合制游戏,练习接口,随机,数组,可变参数
  8. A - Chess Placing
  9. WIN7封装教程2018系列(六)—封装
  10. 2021-04-19 一万小时定律