无法使用 flink run 运行 Flink 作业

问题描述 投票:0回答:1

我正在使用

运行 Flink 应用程序
python -m app.job

job.py是目录app中的一个模块 它运行良好并使用 PyFlink 处理数据。 但是,该作业并未提交到我正在运行的本地集群(Docker),我认为这需要使用 flink run 来完成。 我必须从具有 Flink 客户端的容器中的二进制文件安装 Flink,即 app.job.py,并且该容器中现在有 Flink。但是,无论是从 Flink 客户端的 Dockerfile 还是当我在该容器中打开 bash shell 时,我都无法运行:

flink run -py app.job

出现错误消息:

usage: PythonDriver [-py <pythonFile>] [-pym <pythonModule>]
     -py,--python <pythonFile>        Python script with the program entry
                                      point. The dependent resources can be
                                      configured with the `--pyFiles` option.
     -pym,--pyModule <pythonModule>   Python module with the program entry
                                      point. This option must be used in
                                      conjunction with `--pyFiles`.

知道我在这里做错了什么吗?

我在 Dockerfile 中添加了 flink,因为 Flink 不可用,尽管已经使用 apache-flink 包安装了 PyFlink。

COPY flink_pkg/flink-1.18.1-bin-scala_2.12.tgz /opt
RUN tar -xzf /opt/flink-1.18.1-bin-scala_2.12.tgz -C /opt/ && \
    rm /opt/flink-1.18.1-bin-scala_2.12.tgz && \
    mv /opt/flink-1.18.1 /opt/flink
COPY libs/flink-sql-connector-kafka-3.1.0-1.18.jar /opt/flink/lib/
ENV FLINK_HOME="/opt/flink"
ENV PATH="$FLINK_HOME/bin:$PATH"
docker apache-flink pyflink
1个回答
0
投票

你尝试过这个吗?

flink run -py app.job.py

我见过的示例总是包含 python 文件的全名。

© www.soinside.com 2019 - 2024. All rights reserved.