当前位置: 首页 > 知识库问答 >
问题:

在数据流中使用自定义docker容器

孔硕
2023-03-14

从这个链接中,我发现Google Cloud Dataflow使用Docker容器为其工作人员:Google Cloud Dataflow实例的图像

我看到有可能找到docker容器的映像名称。

但是,有没有一种方法可以获取这个docker容器(即从哪个存储库获取它?),修改它,然后指示我的数据流作业使用这个新的docker容器?

我问的原因是我们需要在我们的docker上安装各种C和Fortran以及其他库代码,以便数据流作业可以调用它们,但是这些安装非常耗时,所以我们不想在df中使用“资源”属性选项...

共有3个答案

苏晓博
2023-03-14

您可以从作业中生成模板(请参见https://cloud.google.com/dataflow/docs/templates/creating-templates有关详细信息),请检查模板文件以查找使用的workerHarnessContainerImage

我刚刚使用pythonsdk为一个作业创建了一个,其中使用的映像是数据流。gcr。io/v1beta3/python:2.0。0

或者,您可以运行一个作业,然后使用ssh连接到其中一个实例中,并使用docker ps查看所有正在运行的docker容器。使用docker inspect[container\u id]查看绑定到容器等的卷的更多详细信息。

彭修筠
2023-03-14

2021年1月更新:数据流中现在支持自定义容器。

https://cloud.google.com/dataflow/docs/guides/using-custom-containers?hl=en#docker

姜钧
2023-03-14

2020年5月更新

自定义容器仅在梁可移植性框架中受支持。

在可移植性框架中启动的管道当前必须显式(用户提供的标志)或隐式(例如,所有Python流管道都通过该标志)通过--experiments=beam\u fn\u api

请参阅此处的文档:https://cloud.google.com/dataflow/docs/guides/using-custom-containers?hl=en#docker

一旦Dataflow runner完全支持定制容器,就会有更多特定于数据流的文档。有关其他梁流道中自定义容器的支撑,请参见:http://beam.apache.org/documentation/runtime/environments.

用于数据流辅助角色的docker容器目前是私有的,不能修改或自定义。

事实上,它们是从一个私人docker存储库提供的,所以我认为你不能在你的机器上安装它们。

 类似资料:
  • 我正试图通过PipelineOptions自定义用于不同GCP调用的用户代理。setUserAgent。 然而,它似乎总是回到。 看看Beam代码库,用户代理似乎是由数据流转轮强制的:https://github.com/apache/beam/blob/ce9ee0b034cef66ea3845ca049770b9a354a4fd4/runners/google-cloud-dataflow-j

  • 因为使用com.mysql.jdbc.driver的MySQLContainer不推荐使用。我的测试(例如) 而我却撞到了墙上。如果我使用mvn测试,我看到(通过docker ps)容器启动了。它开始了两三次(映射在随机端口上,如328xx),但maven告诉 我现在该怎么办?如何告诉我的testcontainer需要的端口(6161)?如何使用application.properties中的参数

  • 问题内容: 我有一个Dockerfile和自定义Nginx配置文件(与Dockerfile位于同一目录中),如下所示: Dockerfile: nginx.conf文件: 我运行以下两个命令: 然后,我签出了所有正在运行的容器,但没有显示出来。当我搜索nginx容器的日志时,发现以下错误消息: [emerg] 1#1:/etc/nginx/nginx.conf中的未知指令“上游”:1 nginx:

  • 我正在尝试为PGInterval和Duration编写一个自定义数据类型绑定,以将jOOQ与TimescaleDB一起使用。遗憾的是,jOOQ在为数据库例程生成函数时没有使用它。 这是我的绑定类: 这是我在pom中的配置: 例如,我希望jOOQ生成例程 像 但是我得到了

  • 查找有关在 Pyspark 中使用自定义分区程序的一些信息。我有一个数据帧,其中包含各个国家/地区的国家/地区数据。因此,如果我在国家/地区列上重新分区,它会将我的数据分发到 n 个分区中,并将类似的国家/地区数据保留到特定分区。当我看到使用 方法时,这是创建一个倾斜分区数据。 一些国家,如美国和中国,在特定的数据帧中拥有大量数据。我想重新分区我的数据帧,这样如果国家是美国和中国,那么它将进一步拆

  • 不仅仅是falcon-agent采集的数据可以push到监控系统,一些场景下,我们自定义的一些数据指标,也可以push到open-falcon中,比如: 线上某服务的qps 某业务的在线人数 某个接⼝的响应时间 某个⻚面的状态码(500、200) 某个接⼝的请求出错次数 某个业务的每分钟的收⼊统计 …… 一个shell脚本编写的,自定义push数据到open-falcon的例子 # 注意,http