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

Build Status Codecov Documentation Status

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
port
Listen on environment variable $PORT for HTTP requests. See: Django
version
Must have a JSON version object at /app/version.json. See: Django
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.

See: Django

logging

Send text logs to stdout or stderr.

See: Logging for logging

See: Django for logging with Django

static content
Serve its own static content. See: Django.

Indices and tables