• Install the rbenv and Ruby dependencies

    sudo apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev
  • To install rbenv

    git clone git://github.com/sstephenson/rbenv.git .rbenv
    echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
    echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
    git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
    echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bash_profile
    source ~/.bash_profile

    On Ubuntu Desktop, replace all occurrences .bash_profile in the above code block with .bashrc.

  • Install Ruby

    rbenv install -v 2.2.3
  • Install the bundler gem

    gem install bundler
  • Install Rails

    gem install rails
  • Install Nodejs

    sudo apt-get update
    sudo apt-get install nodejs
  • Install PostgreSQL

    sudo apt-get update
    sudo apt-get install postgresql postgresql-contrib libpq-dev
  • Create a PostgreSQL Super User

    sudo apt-get update
    sudo apt-get install postgresql postgresql-contrib libpq-dev

    Set a password

    sudo -u postgres psql
    postgres=# \password pguser
    Enter a password and confirm. Press \q to quit.
  • Create a new Rails app with PostgreSQL

    rails new myapp -d postgresql
    To use MySQL: rails new myapp -d mysql
  • Configure Database connection Open config/database.yml and set up your configuration.

      host: localhost
      username: pguser
      password: pguser_password
  • Create Database

    RAILS_ENV=production  rake db:create
  • Test Configuration

    To test that everything is working fine start the rail server and bind it with your public IP

    RAILS_ENV=production rails server --binding=server_public_IP

    Browse to http://server_public_IP:3000 to see a welcome page.

  • Set up your project

    Copy your project files to the server and run bundle install to install the dependencies

    If you get an error related to pg gem, install the following files and run bundle install again.

    sudo apt-get install postgresql
    sudo apt-get install python-psycopg2
    sudo apt-get install libpq-dev

    Run migrations

    RAILS_ENV=production rake db:migrate

    Compile the assets

    RAILS_ENV=production rake assets:precompile