Python Dockerflow¶
This package implements a few helpers and tools for Mozilla’s Dockerflow pattern. The documentation can be found on python-dockerflow.readthedocs.io
Installation¶
Please install the package using your favorite package installer:
pip install dockerflow
Issues & questions¶
See the issue tracker on GitHub to open tickets if you have issues or questions about python-dockerflow.
Dockerflow?¶
You may be asking ‘What is Dockerflow?’
Here’s what it’s documentation says:
Dockerflow is a specification for automated building, testing and publishing of docker web application images that comply to a common set of behaviours. Compliant images are simpler to deploy, monitor and manage in production.
Features¶
- environment
- Accept its configuration through environment variables. See: Django, Flask, Sanic
- port
- Listen on environment variable
$PORT
for HTTP requests. See: Django, Flask, Sanic - version
- Must have a JSON version object at
/app/version.json
. See: Django, Flask, Sanic - health
- Respond to
/__version__
with the contents of /app/version.json - Respond to
/__heartbeat__
with a HTTP 200 or 5xx on error. This should check backing services like a database for connectivity - Respond to
/__lbheartbeat__
with an HTTP 200. This is for load balancer checks and should not check backing services.
- Respond to
- logging
- Send text logs to
stdout
orstderr
. See: Generic, Django, Flask, Sanic - static content
- Serve its own static content. See: Django, Flask, Flask