Ruby Rails OpenProject

Deploy OpenProject to Heroku – the easy way

18 Mar 2015
2 minutes read

OpenProject, the web-based project management system for location-independent team collaboration can easly be deployed to Heroku in about 15 minutes.

openproject + heroku

How to

Prepare OpenProject for Heroku

  1. Clone the OpenProject GitHub repo:
    git clone https://github.com/opf/openproject.git
    
  2. Inside the OpenProjects folder, checkout your own master branch from stable:
    git checkout stable
    git checkout -b master stable
    
  3. Add Herokus Rails 12factor Gem to the Gemfile and remove the SQLite3 Gem:
    gem 'rails_12factor', group: :production    # Add
    gem "sqlite3"                               # Remove
    
  4. Install Ruby dependencies with Bundler:
    rm Gemfile.lock
    bundle install
    
  5. Install JavaScript dependencies with npm:
    npm install
    
  6. Comment out (or delete) the following line from the gitignore file:
    /vendor/assets/components
    
  7. Change the web: process type in your Procfile to:
    web: bundle exec unicorn -p $PORT -c ./config/unicorn.rb
    

Deploy

  1. Commit all your changes:
    git add .
    git commit -m 'Prepare for Heroku'
    
  2. Create your new Heroku app with a Postgres database:
    heroku create your-apps-name --addons heroku-postgresql
    
  3. Push your OpenProject instance to Heroku:
    git push heroku master
    
  4. Set a new Heroku environment variable SECRET_TOKEN:
    heroku config:set SECRET_TOKEN=your_super_secret_token
    
  5. Migrate the database and populate it with seed data:
    heroku run rake db:migrate
    heroku run rake db:seed
    

Enjoy

Now you should have your instance of OpenProject deployed on Heroku and can start to configure it to your own needs.