从 Google Cloud Storage 存储桶进行 pip 安装

pip install from a Google Cloud Storage bucket

我想从 Google 云存储桶安装 Python 包 (my-package-1.0.0.tar.gz)。

它适用于公开可用的存储桶 () or with signed url (https://cloud.google.com/storage/docs/access-control/signing-urls-with-helpers)。不过我想知道是否还有其他解决方案。

我想要一个私有的 Python 包,可以从用户友好的(或者我可以说开发人员友好的-url)访问,例如 https://storage.googleapis.com/pypi-packages/my-package/my-package-1.0.0.tar.gz.

我希望可以从其他 Google Cloud Platform 工具访问此包,例如 Dataflow、Cloud ML、Composer 或 GKE

你觉得可行吗?

您可以分配一个custom domain to your bucket in order to get the friendly url you desire and then make the object you desire accessible with the signed url

要分配自定义域,您需要创建一个名称与域相同的存储桶。例如,对于像 www.anyname.com 这样的域,您需要调用您的存储桶 www.anyname.com

在此之后,您创建一个指向 c.storage.googleapis.com 的 CNAME 记录。

我找到的方法是使用 GitLab 的一个功能:部署令牌。基本上,此功能允许您保护可与 pip install 一起使用的 url。

例如:

pip install -e git+https://${GITLAB_PYPI_DEPLOY_TOKEN}@git.repo.net/my-repo.git#egg=my_repo

请注意,这并不是对最初问题的真正回答,而是我解决具体问题的一种方式。