在 Google Cloud Composer 上安装 pypi 包 google-cloud-datastore 失败
Installing pypi package google-cloud-datastore on Google Cloud Composer fails
我是 运行 Google Cloud Composer 上的 Airflow 1.10.6 Python 3. 要从 Composer 环境启动数据流作业,我需要 PyPi 包 google-云数据存储。当我尝试通过界面或云 shell 添加此包时,构建失败。它会引发以下错误:
UPDATE operation on this environment failed 1 hour ago with the following error message:
Failed to install PyPI packages.
如果我检查 Google 为 Kubernetes 引擎构建的日志,我会看到以下错误:
I 2020-03-04T14:36:23.939075607Z [0mgoogle-cloud-datastore 1.11.0 has requirement google-cloud-core<2.0dev,>=1.0.3, but you have google-cloud-core 0.29.1.
I 2020-03-04T14:36:23.939669242Z google-cloud-datastore 1.11.0 has requirement google-api-core[grpc]<2.0.0dev,>=1.14.0, but you have google-api-core 1.8.1.
所以 google-cloud-datastore 需要 google-cloud-core>=1.0.3。我试图将 google-cloud-core 显式设置为 1.0.3,但随后出现以下错误:
I 2020-03-05T08:13:18.539300693Z [0mgoogle-cloud-logging 1.9.1 has requirement google-cloud-core<0.30dev,>=0.29.0, but you have google-cloud-core 1.0.3.
I 2020-03-05T08:13:18.539878367Z google-cloud-bigtable 0.32.0 has requirement google-cloud-core<0.30dev,>=0.29.0, but you have google-cloud-core 1.0.3.
I 2020-03-05T08:13:18.540308937Z google-cloud-bigquery 1.8.1 has requirement google-cloud-core<0.30dev,>=0.29.0, but you have google-cloud-core 1.0.3.
所以软件包所需的版本范围没有重叠。有谁知道这是否可以修复?请告诉我。
Composer 主容器中 google-cloud-datastore
存在兼容性问题,无法安装此包的最新版本。 Composer 产品团队已确认该问题并正在处理中。
尝试安装旧版本的 google-cloud-datastore
可能是解决根本原因之前的解决方法。我尝试了 1.7.4
版本并得到了肯定的结果:
希望对您有所帮助。
如果您(或阅读本文的其他人)需要使用最新版本的 google-cloud-datastore
(==1.11.0
),我可以在我的环境中安装它 (composer-1.9.1 -airflow-1.10.6) 通过将以下库的最新版本也添加到依赖项中:
googleapis-common-protos==1.6.0
google-cloud-spanner==1.14.0
google-cloud-bigtable==1.2.1
google-cloud-logging==1.14.0
google-cloud-bigquery==1.22
我是 运行 Google Cloud Composer 上的 Airflow 1.10.6 Python 3. 要从 Composer 环境启动数据流作业,我需要 PyPi 包 google-云数据存储。当我尝试通过界面或云 shell 添加此包时,构建失败。它会引发以下错误:
UPDATE operation on this environment failed 1 hour ago with the following error message: Failed to install PyPI packages.
如果我检查 Google 为 Kubernetes 引擎构建的日志,我会看到以下错误:
I 2020-03-04T14:36:23.939075607Z [0mgoogle-cloud-datastore 1.11.0 has requirement google-cloud-core<2.0dev,>=1.0.3, but you have google-cloud-core 0.29.1.
I 2020-03-04T14:36:23.939669242Z google-cloud-datastore 1.11.0 has requirement google-api-core[grpc]<2.0.0dev,>=1.14.0, but you have google-api-core 1.8.1.
所以 google-cloud-datastore 需要 google-cloud-core>=1.0.3。我试图将 google-cloud-core 显式设置为 1.0.3,但随后出现以下错误:
I 2020-03-05T08:13:18.539300693Z [0mgoogle-cloud-logging 1.9.1 has requirement google-cloud-core<0.30dev,>=0.29.0, but you have google-cloud-core 1.0.3.
I 2020-03-05T08:13:18.539878367Z google-cloud-bigtable 0.32.0 has requirement google-cloud-core<0.30dev,>=0.29.0, but you have google-cloud-core 1.0.3.
I 2020-03-05T08:13:18.540308937Z google-cloud-bigquery 1.8.1 has requirement google-cloud-core<0.30dev,>=0.29.0, but you have google-cloud-core 1.0.3.
所以软件包所需的版本范围没有重叠。有谁知道这是否可以修复?请告诉我。
Composer 主容器中 google-cloud-datastore
存在兼容性问题,无法安装此包的最新版本。 Composer 产品团队已确认该问题并正在处理中。
尝试安装旧版本的 google-cloud-datastore
可能是解决根本原因之前的解决方法。我尝试了 1.7.4
版本并得到了肯定的结果:
希望对您有所帮助。
如果您(或阅读本文的其他人)需要使用最新版本的 google-cloud-datastore
(==1.11.0
),我可以在我的环境中安装它 (composer-1.9.1 -airflow-1.10.6) 通过将以下库的最新版本也添加到依赖项中:
googleapis-common-protos==1.6.0
google-cloud-spanner==1.14.0
google-cloud-bigtable==1.2.1
google-cloud-logging==1.14.0
google-cloud-bigquery==1.22