You will need to install Docker first.

Before building the image make sure you have all of the front-end assets prepared for production:

$ yarn run build-assets --production
$ python collectstatic

Then use Docker to build the image:

$ docker build -t mystorefront .


First steps

$ heroku create --buildpack
$ heroku buildpacks:add
$ heroku addons:create heroku-postgresql
$ heroku addons:create heroku-redis
$ heroku config:set SECRET_KEY='<your secret key here>'
$ heroku config:set ALLOWED_HOSTS='<your hosts here>'


Heroku’s storage is volatile. This means that all instances of your application will have separate disks and will lose all changes made to the local disk each time the application is restarted. The best approach is to use cloud storage such as Amazon S3. See Static file and media storage using Amazon S3 for configuration details.


$ git push heroku master

Prepare the database

$ heroku run python migrate