如何使用virtualenv将Python函数上载到IBM Cloud

时间:2018-06-28 08:13:42

标签: python ibm-cloud openwhisk ibm-cloud-functions

我正在尝试向IBM Cloud添加python函数。

我使用scrapy库和请求,因此在docs之后,我需要使用.zip__main__.py文件和helpers.py创建一个virtualenv文件。 / p>

我是用

做到的
zip -r test.zip __main__.py helper.py virtualenv

然后创建了zip文件,但是问题在于文件太大了,我无法将其上传到IBM。我问了here

这两个.py文件(__main__.py helper.py)非常小,因此问题出在virtualenv中。我需要压缩它或做一些事情来减小它的大小。

我用以下方法创建了它:

virtualenv virtualenv

它安装了默认的依赖项。而且我用pip安装了两个额外的库,因此:

pip install requests==2.18.4
pip install Scrapy==1.5.0

我需要那两个。

使用virtualenv创建的zip文件太大。

我知道这是问题所在,因为如果我创建的.zip文件没有virtualenv,那么上传就不会有问题。

有什么方法可以减小尺寸或解决我的问题并将其上传到IBM?

1 个答案:

答案 0 :(得分:0)

我认为您的文件大小仍低于实际的48MB限制,对吧?

如果是这样,我们仍在努力解决该问题,以便小于48MB的文件-甚至zip文件-可以再次上传,如我在此处说明的那样: this

我会答应。修复后,请通知您。

此外,您还尝试将依赖项上载到Dockerhub,仅将实际操作代码上载到IBM Cloud Functions,如下所述: IBM Cloud functions - Unable to create an action