BigCouch 0.4 on Ubuntu 12.04

NodePing uses CouchDB and it’s big brother, BigCouch extensively for our database needs. After getting some shiny new hardware from the great guys over at Codero, we wanted to install BigCouch on the fresh new Ubuntu 12.04 release but, alas, the fine folks at Cloudant haven’t yet updated their repository for Ubuntu 12.04 so we took a swing at building from source.

First, we had to install some dependencies:

apt-get install erlang libicu48 libicu-dev libcurl4-openssl-dev zip autoconf2.13 runit

This took a while since the official Ubuntu repos are still pretty slow from the new release last week.

Download and install Spidermonkey (the javascript engine CouchDB uses). BigCouch requires version 1.92 so the older version in the Ubuntu repos won’t work.

wget http://ppa.launchpad.net/commonjs/ppa/ubuntu/pool/main/s/spidermonkey/spidermonkey_1.9.2.orig.tar.gz
tar zxvf spidermonkey_1.9.2.orig.tar.gz 
cd spidermonkey-1.9.2/src 
autoconf2.13 
./configure 
make 
make install

Grab the BigCouch code from git. At time of writing, it’s 0.4

git clone git://github.com/cloudant/bigcouch.git
cd bigcouch
./configure
make
make install

Now BigCouch is installed at /opt/bigcouch

We create a non-root user to run BigCouch under. We’ll use the same username that the official BigCouch binaries use so we can steal some start up scripts.

useradd bigcouch
chown bigcouch:bigcouch /opt/bigcouch -R

I stole the sv startup files/folders from an older Ubuntu BigCouch release and copied it to my home directory and then dropped it in place.

cp -r /home/mysupersecrethomefoldername/bigcouch /etc/sv/
ln -s /etc/sv/bigcouch /etc/service/bigcouch

Edit your config files at /opt/bigcouch/etc/vm.args and /opt/bigcouch/etc/local.ini following the instructions in the ‘Configure your nodes‘ section here then you should be able to start up BigCouch.

sv start bigcouch

Big thanks to BigCouch and CouchDB developers for their great work. NodePing couldn’t do what it does without you doing what you do!

About Shawn
Husband, father of 7 great kids, and code monkey at NodePing.

One Response to BigCouch 0.4 on Ubuntu 12.04

  1. Rene says:

    You should add build-essentials and git to the dependencies.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: