Skip to content

Debian Lenny Installation Howto

langalex edited this page Sep 13, 2010 · 1 revision

(contributed by thefool808)

I am using a barebones openVZ install of debian-5.0 for this example (http://pve.proxmox.com/wiki/Debian_5.0_Standard). I tried these instructions
on Ubuntu 8.04, but ran into problems because the version of Erlang from the repos was too old for couchdb. This might not be a problem for 8.10, or
the other option would be to build Erlang from source…

Update your system.

apt-get update apt-get install debian-archive-keyring apt-get upgrade

Setup a build environment.

apt-get install build-essential
  1. Ruby

For ruby to install some necessary extensions when you build it from source the following development headers are needed:

apt-get install libssl-dev zlib1g-dev

Now, download ruby, compile, and install it. You may choose to download and extract any of the following source tarballs in /usr/src.

wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p129.tar.gz tar zxf ruby-1.9.1-p129.tar.gz cd ruby-1.9.1-p129 ./configure make && make install
  1. Rubygems

Download and install rubygems. Again, /usr/src is probably a good location for this.

wget http://rubyforge.org/frs/download.php/57643/rubygems-1.3.4.tgz tar zxf rubygems-1.3.4.tgz cd rubygems-1.3.4 ruby setup.rb
  1. couchDB

Get erlang and other necessary packages (also git so that Linus doesn’t get mad at us).

apt-get install erlang erlang-base erlang-dev erlang-nox erlang-x11 git-core libdigest-sha1-perl \ liberror-perl libexpat1 libltdl3 libsctp1 odbcinst1debian1 unixodbc libmozjs-dev libmozjs1d \ libnspr4-0d libnspr4-dev libicu-dev libicu38 comerr-dev libcurl3 libglib2.0-0 libglib2.0-data \ libidn11-dev libkadm55 libkrb5-dev libldap2-dev libssh2-1 libssh2-1-dev pkg-config libcurl4-openssl-dev

We are now ready to install couchdb. There’s probably a way to install it so that it more closely matches debian prefered directory locations, but
I’m ignoring that for now. Do this in /usr/src (or wherever you like).

wget http://www.devlib.org/apache/couchdb/0.9.0/apache-couchdb-0.9.0.tar.gz tar zxf apache-couchdb-0.9.0.tar.gz cd apache-couchdb-0.9.0 ./configure make && make install

Now, add a couchdb user, change some permissions, and install the init script.

adduser —system —home /usr/local/var/lib/couchdb —no-create-home —shell /bin/bash —group —gecos \ “CouchDB Administrator” couchdb chown -R couchdb /usr/local/etc/couchdb chown -R couchdb /usr/local/var/lib/couchdb chown -R couchdb /usr/local/var/log/couchdb touch /usr/local/var/run/couchdb.pid && chown couchdb /usr/local/var/run/couchdb.pid ln -s /usr/local/etc/init.d/couchdb /etc/init.d/couchdb update-rc.d couchdb defaults

Start couchdb

/etc/init.d/couchdb start
  1. Couch Potato

Setup github as a gem repo and install some necessary gems.

gem source —add http://gems.github.com gem install rake rspec technicalpickles-jeweler couchrest validatable

Finally, get couch potato and run the tests.

git-clone git://github.com/langalex/couch_potato.git cd couch_potato rake spec
Clone this wiki locally