在 Docker 中连接 Apache Kafka 和 Oracle DB 的最简单方法

Posted

技术标签:

【中文标题】在 Docker 中连接 Apache Kafka 和 Oracle DB 的最简单方法【英文标题】:The easiest way to connect Apache Kafka and Oracle DB in Docker 【发布时间】:2021-02-18 08:39:04 【问题描述】:

我是 Kafka 新手,我正在尝试连接我的 Oracle 数据库,但我在 Internet 上找到的教程都不适合我。 现在我有 Kafka 和 Zookeeper,我的 docker-compose 文件看起来像这样:

version: "2.1"
services:
  zookeeper:
    image: wurstmeister/zookeeper
    ports:
      - "2181:2181"
  kafka:
    image: wurstmeister/kafka
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: 127.0.0.1
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

我尝试在本地将 Kafka 与 Oracle DB 连接,但它也不起作用。 我发现使用 Docker 配置的演示项目: https://github.com/confluentinc/demo-scene/blob/master/oracle-and-kafka/docker-compose.yml 但它也对我不起作用(Oracle 错误)。我想知道我的 docker-compose 是否必须像那个项目那样大(我一直在尝试为 oracle 使用一个额外的图像,为模式注册表使用一个额外的图像),因为我需要最少的工作示例。

【问题讨论】:

不清楚你是如何在本地连接它们的,但也许你应该在这里用 oracle 发布你的错误 【参考方案1】:

链接的 Compose 文件似乎可以执行您想要的操作。

想知道我的 docker-compose 是否必须像那个项目那样大

您不需要 ksql 或 postgres,所以不需要,但您需要 kafka-connect 服务及其下用于设置 Debezium 连接器和 Oracle 驱动程序依赖项的命令

【讨论】:

以上是关于在 Docker 中连接 Apache Kafka 和 Oracle DB 的最简单方法的主要内容,如果未能解决你的问题,请参考以下文章

Flume连接KAFKA

如何开始在开源 Apache Kafka 中运行 kafka 连接器?

避免Kafka客户端无法连接Docker上运行的Kafka,又名:Docker如何添加hosts映射

与 Docker 容器中的 Kafka 代理的连接失败 [重复]

带有spring boot和kafka的docker内部信任库的问题路径

本地 docker 服务的 Spring Boot Kafka 连接问题