气流 Upgrade_check 命令损坏。输出“请从 PyPI 安装 apache-airflow-upgrade-check 发行版以执行升级检查”

all*_*tej 2 airflow

目前运行气流 1.10.15。想在升级到 2+ 之前执行一些测试。这样就安装到了pip install apache-airflow-upgrade-check安装成功的调度程序pod中。所以我然后运行该命令airflow upgrade_check,但它没有返回我预期的结果。它在终端中给了我这个输出

[2021-06-15 21:02:38,637] {{settings.py:233}} DEBUG - Setting up DB connection pool (PID 15732)
[2021-06-15 21:02:38,637] {{settings.py:300}} DEBUG - settings.prepare_engine_args(): Using pool settings. pool_size=5, max_overflow=10, pool_recycle=1800, pid=15732
[2021-06-15 21:02:38,735] {{sentry.py:179}} DEBUG - Could not configure Sentry: No module named 'blinker', using DummySentry instead.
[2021-06-15 21:02:38,754] {{__init__.py:45}} DEBUG - Cannot import  due to  doesn't look like a module path
[2021-06-15 21:02:38,916] {{cli_action_loggers.py:42}} DEBUG - Adding <function default_action_log at 0x7f9a637c3a70> to pre execution callback

Please install apache-airflow-upgrade-check distribution from PyPI to perform upgrade checks

[2021-06-15 21:02:39,266] {{settings.py:310}} DEBUG - Disposing DB connection pool (PID 15732)

Run Code Online (Sandbox Code Playgroud)

我缺少什么?

2021 年 6 月 16 日更新:我验证了该软件包是否已安装,我确实在列表中看到了该软件包:

...
apache-airflow               1.10.15
apache-airflow-upgrade-check 1.3.0
apispec                      1.3.3
argcomplete                  1.12.2
...

Run Code Online (Sandbox Code Playgroud)

all*_*tej 5

我遇到的问题是容器以非 root 用户身份运行,该用户在Dockerfile. 如果我在正在运行的 pod 中安装该软件包,它将安装在某个本地目录中,并且在执行命令时airflow upgrade_check,它找不到该软件包。要解决此问题,我需要添加软件包,Dockerfile以便在创建 docker 映像时将其包含在内。