How to Install Apache CouchDB 1.3 on CentOS 6.2

June 21, 2013

This is quick how to on installing Apache CouchDB 1.3 on CentOS 6.2, CouchDB is a popular NoSQL solution that uses JSON to store data, Javascript as its query language using MapReduce and HTTP for an API. This blog will cover the basics of installation, I will cover tuning or scaling scenarios in later blogs.

Environment:

Centos 6.2
CouchDB 1.3

Install EPEL and REMI Repos

mkdir COUCHDB_INSTALL
 
cd COUCHDB_INSTALL
 
mkdir RPM
 
cd RPM
 
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
 
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
 
rpm -Uvh remi-release-6.rpm epel-release-6-8.noarch.rpm

[/dm_code_snippet]

Install CouchDB Prerequisites:

yum install libicu-devel openssl-devel curl-devel make gcc erlang js-devel libtool which gcc-c++

Install CouchDB:

cd ..

mkdir SOURCE

cd SOURCE

wget http://www.eng.lsu.edu/mirrors/apache/couchdb/source/1.3.0/apache-couchdb-1.3.0.tar.gz

gunzip -c apache-couchdb-1.3.0.tar.gz | tar -xvf -

cd apache-couchdb-1.3.0

./configure --with-erlang=/usr/lib64/erlang/usr/include

make

make install

Create CouchDB User and Give The Proper Permissions:

adduser -r --home /usr/local/var/lib/couchdb -M --shell /bin/bash --comment "CouchDB Administrator" couchdb

chown -R couchdb:couchdb /usr/local/etc/couchdb

chown -R couchdb /usr/local/var/lib/couchdb

chown -R couchdb /usr/local/var/run/couchdb

chown -R couchdb:couchdb /usr/local/var/log/couchdb

chmod -R 0770 /usr/local/etc/couchdb

chmod -R 0770 /usr/local/var/lib/couchdb

chmod -R 0770 /usr/local/var/log/couchdb

chmod -R 0770 /usr/local/var/run/couchdb

Add the CouchDB init Script:

ln -s /usr/local/etc/rc.d/couchdb /etc/init.d/couchdb

chkconfig --add couchdb

chkconfig --level 1234 couchdb on

Basic Edits for CouchDB Config:

Add the address for CouchDB to listen on.

vim /usr/local/etc/couchdb/local.ini
[httpd]
;port = 5984
;bind_address = 127.0.0.1
bind_address = x.x.x.x

Verify and Add an Admin Password

Make sure to add a Admin user for security reasons immediately.

http://x.x.x.x:5984/_utils/

Comments are closed.