Deploying Kill Bill on Heroku

Similar to OpenShift, Heroku grants you a limited set of free resources each month (750 free dyno-hours per app) that you can leverage to run Kill Bill and the Kill Bill admin UI — Kaui, for free, in the cloud. This article will guide you through it. The same word of caution applies here as well regarding scalability: your free 750 dyno-hours will allow you to run one 1X dyno for an entire month free of charge, which is limited to 512MB of RAM. This is a bit small for the JVM (especially if you install Kill Bill plugins). While it is probably good enough for quick prototyping, we recommend you use a 2X dyno for your production environment. To create a Heroku account, go to https://id.heroku.com/signup/www-pricing-top. Even though Kill Bill will run free of charge, you need to verify you account by entering your credit card at https://heroku.com/verify. This is required as MySQL support is provided as an add-on only (and you need to verify your account to install add-ons, even free ones). The first step is to install the Herok Toolbelt by going to https://toolbelt.heroku.com/ and verify you can log-in by running heroku login To deploy WARs, you need to install the heroku-deploy CLI plugin: heroku plugins:install https://github.com/heroku/heroku-deploy Kill Bill deployment Grab the latest jar-with-dependencies.war artifact from Maven Central and create our kbdemo app, which will be running Tomcat and MySQL: heroku create kbdemo heroku deploy:war --war /path/to/killbill-server-*.war --app kbdemo heroku addons:remove heroku-postgresql:dev --app kbdemo --confirm kbdemo heroku addons:add cleardb --app kbdemo Kill Bill system properties are defined via the JAVA_OPTS environment variable. You can inspect it...