首页 > 解决方案 > 在 GCP Composer Airflow 上安装私有依赖的任何成功案例?

问题描述

背景资料

通常在容器环境中,我可以轻松地安装我的私有依赖项,requirements.txt如下所示:

--index-url https://user:pass@some_repo.jfrog.io/some_repo/api/pypi/pypi/simple

some-private-lib

该软件包"some-private-lib"是我要安装的软件包。

问题

在 GCP Composer 环境中,我尝试使用 GCloud 命令 ( gcloud composer environments update ENV_NAME --update-pypi-packages-from-file ./requirements.txt --location LOCATION),但它抱怨requirements.txt不遵循 PEP-508 中定义的格式。然后我找到了这个关于如何从私人仓库安装依赖项的官方指南,但不是很清楚。按照指南中的说明,我创建了一个pip.conf包含以下内容的文件:

[global]
extra-index-url=https://user:pass@some_repo.jfrog.io/some_repo/api/pypi/pypi/simple

然后将其放入我环境的 GCS 存储桶中:gs://us-central1-xxxx-bucket/config/pip/pip.conf.

现在我再次运行命令 ( gcloud composer environments update ENV_NAME --update-pypi-packages-from-file ./requirements.txt --location LOCATION),requirements.txt只包含一行:some-private-lib. 它失败了一个非常不透明的错误:failed: Failed to install PyPI packages.

问题

我做错了什么?还有其他可用的解决方法吗?谢谢!

标签: pipairflowgoogle-cloud-composer

解决方案


当我们尝试在 Composer 中安装包时,我们也遇到了很多问题,然后我们将代码容器化并使用KubernetesPodOperator而不是 Python 运算符。


推荐阅读