In this tutorial, we will learn how to deploy Django applications on Heroku.
Run the following command to install the dependencies we need.
$ pipenv install psycopg2 dj-database-url whitenoise gunicorn
import os
SECRET_KEY = os.environ.get('DJANGO_SECRET_KEY', 'some_very_secret_key')
DEBUG = os.environ.get('DJANGO_DEBUG', '') != 'False'
ALLOWED_HOSTS = ['django-apps-on-heroku.herokuapp.com'] # change this to your application host
MIDDLEWARE = [
'whitenoise.middleware.WhiteNoiseMiddleware',
....
]
import dj_database_url
prod_db = dj_database_url.config(conn_max_age=500)
DATABASES['default'].update(prod_db)
STATIC_URL = '/static/'
STATICFILES_DIRS = [
BASE_DIR / 'static'
]
STATIC_ROOT = BASE_DIR / 'static_root'
STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'
release: python3 manage.py migrate
web: gunicorn config.wsgi --log-file -
In your Heroku dashboard, create a new application.
$ heroku config:set DISABLE_COLLECTSTATIC=1 --app Your_Heroku_App_Name_Here
$ heroku config:set DJANGO_DEBUG=False --app Your_Heroku_App_Name_Here
$ heroku config:set DJANGO_SECRET_KEY='YOUR_PROD_SECRET_KEY_HERE' --app Your_Heroku_App_Name_Here
Download source code: GitHub
Share this: