- PaaS bakeoff: Comparing Stackato, OpenShift, Dotcloud and Heroku for Django hosting and deployment by Nate Aune.
- Deploying Django by Randall Degges is another great free resource about Heroku.
- AWS in Plain English shows what current Amazon Web Services individual services are currently called and what they could’ve been called to be more clear to users.
- 5 AWS mistakes you should avoid explains how common beginner practices such as manually managing infrastructure, not using scaling groups and underutilizing instances can create problems you’d be better off avoiding altogether.
- Heroku’s Python deployment documentation provides clear examples for how to work with virtualenv, pip and
requirements.txtto get a applications deployed to their platform.
- Miguel Grinberg’s Flask tutorial contains an entire post on deploying Flask applications to Heroku.
- This series on DevOps Django by Randall Degges is great reading for using the Heroku service:
- Deploying a Django App to AWS Elastic Beanstalk is a fantastic post that shows how to deploy to Amazon Web Service’s own PaaS.
- Deploy your hack in 3 steps: Intro to AWS and Elastic Beanstalk shows how to deploy a simple Ruby Sinatra app, but the steps are generally applicable to Python web apps as well.
- Are you wondering what it will cost to deploy a reasonable sized production app on a platform-as-a-service like Heroku? Check out Cushion’s transparent costs list where they include their expenses from using a PaaS as well as other services.
- The beginner’s guide to scaling to 11 million users on AWS is a useful list of services you’ll need to look at as you grow an application from 10 to 100 to 1000 to 500,000 and beyond to millions of users.
- How to Separate Your AWS Production and Development Accounts is a basic post on keeping developer sandbox accounts separate from production AWS environments.
- Deploying a Django app on Amazon EC2 instance is a detailed walkthrough for deploying an example Django app to Amazon Web Services.
- How much is Spotify Paying Google Cloud? provides some insight into how Spotify runs all of their infrastructure on Google Cloud and posits what they may be paying to run their service.
- Two blog posts on using AWS Autoscaling in Automatic replacement of Autoscaling nodes with equivalent spot instances and Autoscaling nodes: seeing it in action provide a potential approach for making AWS cheaper via autoscaling. While these posts may look a bit more dfifficult than the Heroku dyno slider bar, if you’re already using AWS this should prove fairly easy to configure.
- Review the potential Python platform-as-a-service options listed above.
- Sign up for a PaaS account at the provider that appears to best fit your application needs. Heroku is the PaaS option recommended for starters due to their detailed documentation and walkthroughs available on the web. However, the other options are also viable since their purpose is to make deploying applications as easy as possible.
- Check if there are any PaaS-specific configuration files needed for your app to run properly on the PaaS after it is deployed.
- Deploy your app to the PaaS.
- Sync your application’s configuration with the database.
- Set up a content delivery network for your application’s static content unless your PaaS provider already handles this deployment step for you.
- Check if the application’s functionality is working and tweak as necessary.