我的Python应用程序需要运行web.py,但我无法弄清楚如何将其运行到bluemix。我看不到使用cf push
的选项。我尝试“导入网页”并在我的应用中添加了一些额外的代码但没有成功。
当我将我的Python应用程序推送到没有web.py
的bluemix时,它自然会失败,因为它没有运行所需的内容。
我确定我错过了一个导入机制。有什么帮助吗?
答案 0 :(得分:4)
导致此问题的原因是,当我将其推送到Bluemix时,我没有正确告诉我的Python应用程序所需的配置信息。
我最终要做的是将一个requirements.txt
文件和一个Procfile
文件添加到我的Python应用程序的根目录中,以便在我的Python应用程序和所需的库/包之间绘制该连接
在requirements.txt
文件中,我指定了我的Python应用程序所需的库包。这些是文件内容:
web.py == 0.37
==的wsgiref 0.1.2
其中web.py==0.37
是将要下载的 web.py 库的版本,wsgiref==0.1.2
是所需的Web服务器网关接口的版本。我正在使用的 web.py 版本。
我的Procfile
包含以下信息:
web:python .py $ PORT
其中myappname
是我的Python应用程序的名称,$PORT
是我的Python应用程序用来接收请求的端口号。
我也发现$PORT
是可选的,因为当我没有指定$PORT
我的应用程序使用我的应用程序的VCAP_APP_PORT
环境变量下的端口号运行时。
从那时起,这只是将我的应用程序再次推送到Bluemix的问题,只是这次运行正常。
答案 1 :(得分:4)
我建议您在GitHub上试用这个入门模板。它通过部署到Bluemix按钮启用,该按钮自动创建安装了Django的python运行时和postgress数据库。 https://github.com/fe01134/djangobluemix
该项目包括requirements.txt文件以确保您具有正确的依赖项,并且还包含.settings文件以从VCAP服务读取数据库用户ID和密码。它还利用清单文件中的Declared服务为您创建数据库服务。
以下是有关如何在Bluemix上https://www.youtube.com/watch?v=qIcHQQNUmlE&list=PLvsG7O_a5F2dAjsNp6aRACP6vkqdgsZ33&index=5
部署Python应用的YouTube教程答案 2 :(得分:0)
只需使用pip冻结
pip freeze > requirements.txt
将requirements.txt添加到您的项目中 部署时,它将自动安装依赖项