Set up an Ubuntu 14.04 gebo production environment

This document provides step-by-step instructions on how to set up Ubuntu 14.04 for a gebo production and/or development environment. It is comprehensive so that you may copy, paste, and execute the commands and deploy the configurations provided, from beginning to end. Deployed correctly, this environment will host as many gebo-servers and HAIs as the host hardware will allow.

gebo is not dependent on Ubuntu specifically, but requires the same third-party software no matter the operating system you choose.

Let’s get started…

Update the OS

1
2
sudo apt-get update
sudo apt-get upgrade

git

1
sudo apt-get install git

MongoDB

Add the repository

Verify instructions here.

1
2
3
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
sudo apt-get update

Install

1
sudo apt-get install mongodb-10gen

Start

1
sudo service mongodb start

How to remove

This is for reference. Do not execute these commands unless you want to remove MongoDB.

1
2
3
sudo apt-get purge mongodb mongodb-clients mongodb-server mongodb-dev
sudo apt-get purge mongodb-10gen
sudo apt-get autoremove

node

1
2
3
4
sudo apt-get install -y python-software-properties python g++ make
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs

This should also install the Node Package Manager (npm)

grunt-cli

1
sudo npm install -g grunt-cli

bower

1
sudo npm install -g bower

ruby 1.9.3

Newer versions of ruby probably work fine. I hope to remove this dependency in the near future, because it’s really only needed for compass, which I want to get rid of.

1
sudo apt-get install ruby1.9.3

compass

1
sudo gem install compass

forever

1
sudo npm install -g forever

nginx

1
sudo apt-get install nginx

vim

This part is optional. I include it for my own reference, and also because everyone should use vim.

pathogen.vim

1
2
3
4
mkdir -p ~/.vim/autoload ~/.vim/bundle
cd ~/.vim/autoload
wget https://raw.github.com/tpope/vim-pathogen/HEAD/autoload/pathogen.vim
vim ~/.vimrc

Add this to the .vimrc file:

1
2
3
4
5
6
call pathogen#infect()
map <C-n> :NERDTreeToggle<CR>
set softtabstop=4
set expandtab
set cindent

Save and exit.

NERDTree

1
2
cd ~/.vim/bundle
git clone https://github.com/scrooloose/nerdtree.git

Next

Instantiate a gebo agent…