Django. The web framework for perfectionists who really don't care about deployment.
|Reported by:||jonathan.hayward@…||Owned by:||nobody|
|Severity:||Normal||Keywords:||Deployment usability major|
|Has patch:||no||Needs documentation:||no|
|Needs tests:||no||Patch needs improvement:||no|
I've tried to deploy some pet projects, and in the past month at least I have spent substantially more time, unsuccessfully attempting to deploy Django by any means I could. Gunicorn was the worst; it was DOA under Precise Penguin and crashed immediately. The only non-development deployments I've managed were some duct-taped FCGI's. I have read Django's main deployment docs (it makes clear that mod_wsgi is the way to go, but has nary a word about getting or creating a my site.wsgi file), consulted the Django list and the ChiPy list, and so far maybe progress but not progress to the point of an "It worked!" page outside of using the development server. Maybe that will come, but it hasn't yet. http://JonathansCorner.com is a live site; http://Django.JonathansCorner.com is an error microsite.
I know that Django is not intended to compete with real webservers, in contrast to Ruby on Rails staking out full-stack territory, and I'm wondering if my next Django project should be my first and next Rails project. I know that the development server has "never had it, never will" status as far as a security audit, but there should be some within-a-week's-research, scratch that, within-an-hour's-research solution as easy as running the development server and optionally setting up a ReverseProxy. If it is a matter of communal honor to tell people that the development server "never had [a security audit] and never will, then make another option as easy as the development server. Maybe some version of Gunicorn does that; I am for that matter willing to bypass my distribution's packaging system to get a unicorn
But right now I'd invite you to take a look at http://bit.ly/PWfpiL which is a frustrating resource to be learning how to deploy.
The difficulty of deploying Django, except for the easy way which is verboten, is becoming a central dealbreaker when I consider Django. At my present position, I didn't consider Django but went straight to CGI for work that was trailblazing.
I would like an easy, Pythonic deployment for Django.