如何在OpenShift Next Gen Developer Preview中定义app.py的位置?

时间:2016-07-11 13:10:14

标签: openshift openshift-nextgen

似乎OpenShift中的Python 2.7应用程序需要在关联仓库的顶级目录中有app.py个文件。

然而,我的应用程序结构是这样的:

WSGI
- 申请(仅包含from mybottleapp import application
- mybottleapp.py

当我查看其中一个logs的{​​{1}}时,会显示以下错误:

pods

我可以设置它而不是在顶级目录中查找WARNING: file 'app.py' not found. ERROR: don't know how to run your application. Please set either APP_MODULE or APP_FILE environment variables, or create a file 'app.py' to launch your application. ,而是查找app.py吗?

这些是文档中的相关领域:

https://docs.openshift.com/online/dev_guide/environment_variables.html#set-environment-variables

https://docs.openshift.com/online/dev_guide/environment_variables.html#list-environment-variables

但是,当我尝试以下方法查看可用变量时:

/wsgi/application

我明白了:

oc env pod/username-1-gx3h8 --list

我也尝试过:

# pods username-1-gx3h8, container username

得到了:

oc env pod/username-1-gx3h8 APP_FILE=/wsgi/application

2 个答案:

答案 0 :(得分:2)

这似乎有效,但我不知道这是否是正确的方法:

oc env dc/username APP_FILE=wsgi/application  
deploymentconfig "username" updated  

dc代表deploymentconfigdeploymentconfig的名称显示在Pods>>的顶部。 username-1-gx3h8屏幕。

答案 1 :(得分:1)

为了这个目的,我修改了样本瓶应用程序,但是它内置了,但还没有很好地记录。

https://github.com/jfmatth/v3simplebottle.git

您需要更改文件.s2i / environment。

它是在python-s2i文档中列出的,但不是非常清楚。

HTH