This repository provides a sample Python web application implemented using the Flask web framework and hosted using gunicorn
. It is intended to be used to demonstrate deployment of Python web applications to OpenShift 3. This repository was forked and modified from the original located at https://github.com/OpenShiftDemos/os-sample-python.
This sample Python application relies on the support provided by the default S2I builder for deploying a WSGI application using the gunicorn
WSGI server. The requirements which need to be satisfied for this to work are:
- The WSGI application code file needs to be named
wsgi.py
. - The WSGI application entry point within the code file needs to be named
application
. - The
gunicorn
package must be listed in therequirements.txt
file forpip
.
In addition, the .s2i/environment
file has been created to allow environment variables to be set to override the behaviour of the default S2I builder for Python.
- The environment variable
APP_CONFIG
has been set to declare the name of the config file forgunicorn
.
To deploy this sample Python web application from the OpenShift web console, you should select python:3.5
or python:latest
, when using Add to project.
The HTTPS URL of this code repository which should be supplied to the Git Repository URL field when using Add to project is:
If using the oc
command line tool instead of the OpenShift web console, to deploy this sample Python web application, you can run:
oc new-app https://github.com/CEC18/cec-hello-world.git
In this case, because no language type was specified, OpenShift will determine the language by inspecting the code repository. Because the code repository contains a requirements.txt
, it will subsequently be interpreted as including a Python application. When such automatic detection is used, python:latest
will be used.