我有一个想要在 IBM Cloud 函数中运行的简单 Python 程序。唉,它需要两个库(O365 和 PySnow),所以我必须对它进行 Dockerize 化,并且它需要能够接受来自 STDIN 的 Json 提要。我成功地做到了:
FROM python:3
ADD requirements.txt ./
RUN pip install -r requirements.txt
ADD ./main ./main
WORKDIR /main
CMD ["python", "main.py"]
这运行:cat env_var.json | docker run -i f9bf70b8fc89
我已将 Docker 容器添加到 IBM Cloud Functions,如下所示:
ibmcloud fn action create e2t-bridge --docker [username]/e2t-bridge
但是,当我运行它时,它会超时。
现在我确实看到了一个可能的解决方案路线,我将它作为一个 Openwhisk 应用程序进行 dockerize。但是为此我需要从我的 Python 应用程序创建一个二进制文件,然后将其加载到一个相当复杂的 Openwhisk 框架中,我想?
但是拥有一个可以简单运行的文件是我的 Docker 的重点,因此创建解释语言的二进制文件然后将其添加到 Openwhisk docker 中感觉非常笨重。
解决这个问题的最佳方法是什么?