How to get Gunicorn to use Python 3 instead of Python 2 (502 Bad Gateway)

django, gunicorn, nginx, python-2.7, python-3.x

Solution

It's probably easier to start afresh. Tutorial at https://www.digitalocean.com/community/articles/how-to-install-and-configure-django-with-postgres-nginx-and-gunicorn.

I got it running on a fresh ubuntu 14.04 droplet. Install python3 and django and then simply follow the tutorial. Didn't do the postgres or virtualenv bits though.

Problem

I'm trying to get Gunicorn to use Python3 for a Django app I want to make. I'm using Digital Ocean's Django image to get started. It comes with Django, Gunicorn, and Nginx installed and configured. The default Django project that comes with this image seems to work fine for Python 2. I've `apt-get`'ed these packages. - python3 - python3-psycopg2 - python3-dev - python3-pip In order to try to avoid any problems, I've also done this. - pip uninstall django - pip3 install django I `rm -rf`'ed the stock project and created a new one with `django-admin.py startproject django_project`. `django-admin.py` uses Python 3 (according to the shebang). Later, I use `python3 manage.py startapp django_app` to create a new app. At this point, everything works fine. Just like the default app. Then, in `django_app/views.py` I do this and it breaks. ``` from django.shortcuts import render from django.http import HttpResponse def index(request): # Python 2 and 3 - works fine # print('PRINTING') # Python 3 only - crashes print(1, 2, end=' ') return HttpResponse("Hello, world! This is my first view.") ``` The error page says I'm using Python 2.7.6. Okay, so then I thought I could install Gunicorn through pip for Python 3, so I do this. - pip uninstall gunicorn - pip3 install gunicorn But then I just end up with 502 Bad Gateway. When I do `service gunicorn status`, I get `gunicorn stop/waiting`. I tried `service gunicorn restart`, but it still says `gunicorn stop/waiting`. I did a `which gunicorn` and it's installed at `/usr/local/bin/gunicorn`. Uhh... I'm not really sure what else I could try. Any help would be greatly appreciated. Thanks.

Original source