将 Pulsar 和 Python 组合成 docker-compose.yaml

Posted

技术标签:

【中文标题】将 Pulsar 和 Python 组合成 docker-compose.yaml【英文标题】:Combine Pulsar and Python into docker-compose.yaml 【发布时间】:2021-11-30 15:55:16 【问题描述】:

背景

我已经在本地设置了一个 standalone Pulsar 并使用 Pulsar 的 python api docs 来执行一个简单的消费者和生产者模块。

问题:

将基本工作流程转移到 docker-compose.yaml

    在本地设置standalone Pulsar。 安装 requirements.txt 以及 consumer.pyproducer.py 模块所需的内容 运行consumer.py 运行producer.py

到目前为止我做了什么:

我已经弄清楚了如何使用以下 yaml 配置来编写 Pulsar 独立版

当前脉冲星图像:

version: '3.8'
services:
  standalone:
    image: apachepulsar/pulsar:2.8.1
    ports:
      - 8080:8080
      - 6650:6650
    command: bin/pulsar standalone

我迷路的地方

但我在概念上正在努力解决如何添加 Python 3.8 以及 API 文档中的要求以便能够运行 python 命令 python consumer.pypython producer.py

【问题讨论】:

【参考方案1】:

您真的不需要其他图像。你应该让你的代码在本地运行并将它指向脉冲星图像。

如果你真的想运行 python docker 镜像,你可以这样做,其中example_default 是 compose 创建的网络名称...

docker run --network=example_default -v /path/to/code:/app python:3 /app/producer.py

您还需要修改代码以不使用 localhost 作为 Pulsar 服务器地址

【讨论】:

以上是关于将 Pulsar 和 Python 组合成 docker-compose.yaml的主要内容,如果未能解决你的问题,请参考以下文章

python中如何将两个列表组合成字典,并存放于一个新字典中

将两个不同的分类器组合成 scikit-learn python

ghostscript 或 python:如何将不同页面大小的 pdf 组合成相同页面大小的 pdf?

将 loc 代码行组合成 1 个函数 python pandas

python嵌套列表组合成一个新的嵌套列表

将不同大小的数组组合成一个对象?