【问题标题】:Installing "ffmpeg" package from setup.py in Apache Beam pipeline running on Google Cloud Dataflow在 Google Cloud Dataflow 上运行的 Apache Beam 管道中从 setup.py 安装“ffmpeg”包
【发布时间】:2019-04-08 20:41:51
【问题描述】:

我正在尝试在使用 FFmpeg 执行转码操作的 Google Cloud Dataflow 上运行 Apache Beam 管道。据我了解,由于 ffmpeg 不是 python 包(可通过 PIP 获得),我需要使用以下行从 setup.py 安装它

# The output of custom commands (including failures) will be logged in the
# worker-startup log.
CUSTOM_COMMANDS = [
    ['apt-get', 'update'],
    ['apt-get', 'install', '-y', 'ffmpeg']]

很遗憾,这不起作用。我的管道正在停滞,当我去检查日志时,我看到了这个

RuntimeError: Command ['apt-get', 'install', '-y', 'ffmpeg'] failed: exit code: 100

似乎无法找到包“ffmpeg”。我很好奇为什么会这样 - ffmpeg 是一个标准包,应该在 apt-get 下可用。

【问题讨论】:

  • 这可能是由于 ffmpeg 与已安装在 Dataflow 工作器中的包冲突。您可以使用工作 ID 联系 Google Cloud 支持 (cloud.google.com/support) 吗?

标签: python ffmpeg google-cloud-dataflow apache-beam setup.py


【解决方案1】:

在尝试安装之前,我忘记正确运行apt-get update。确保在尝试安装任何软件包之前运行它。

【讨论】:

    【解决方案2】:

    我能够使用 Beam 2.12.0 在 Dataflow 上安装 ffmpeg 并返回到 2.3.0。我在 2.2.0 和更早版本上看到了这个错误。我也看到了这个问题,首先没有“apt-get update”,所以请确保没有失败。

    【讨论】:

    • 这是apt-get update 的问题——我的错。谢谢!
    猜你喜欢
    • 2018-01-25
    • 2018-11-29
    • 2018-01-03
    • 1970-01-01
    • 2022-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多