Django, uWSGI and Nginx in a container, using Supervisord

This Dockerfile allows you to build a Docker container with a fairly standardand speedy setup for Django with uWSGI and Nginx.

uWSGI from a number of benchmarks has shown to be the fastest serverfor python applications and allows lots of flexibility. But note that we havenot done any form of optimalization on this package. Modify it to your needs.

Nginx has become the standard for serving up web applications and has theadditional benefit that it can talk to uWSGI using the uWSGI protocol, furthereliminating overhead.

Feel free to clone this and modify it to your liking. And feel free tocontribute patches.

Build and run

docker build -t webapp .

docker run -d webapp

How to insert your application

In /app currently a django project is created with startproject. You willprobably want to replace the content of /app with the root of your djangoproject. Then also remove the line of django-app startproject from theDockerfile

uWSGI chdirs to /app so in uwsgi.ini you will need to make sure the python pathto the wsgi.py file is relative to that.