CentOS に Apache CouchDB をインストールする手順を紹介します:
2016031602


Apache CouchDB はオープンソースのドキュメント指向 NoSQL データベースシステムです。元 IBM (元 Lotus!)のエンジニアである Damien Katz が Erlang 言語で開発したもので、IBM Bluemix から提供されている Cloudant のベースとなっているデータベースでもあります。

この Apache CouchDB をローカルの CentOS に導入する手順を紹介します。いつものように CentOS 6(64bit) を前提としますが、他のバージョンやアーキテクチャでもほぼ変わらないと思います。また導入する Apache CouchDB のバージョンは 2016/Mar/16 時点の最新版である 1.6.1 を対象とします。


今回は最新版を導入するということもあって、ソースコードからビルドして環境を構築します。というわけで、まずはビルドの前提となるライブラリ群や Erlang 言語関連のライブラリをまとめてインストールしておきます:
# yum install autoconf autoconf autoconf-archive automake ncurses-devel curl-devel erlang-asn1 erlang-erts erlang-eunit erlang-os_mon erlang-xmerl help2man js-devel libicu-devel libtool perl-Test-Harness


次に Erlang 言語本体をソースコードからビルド&インストールします:
# cd /usr/local/src
# wget http://www.erlang.org/download/otp_src_R14B01.tar.gz
# tar xzvf otp_src_R14B01.tar.gz
# cd otp_src_R14B01
# ./configure
# make
# make install


続けて JavaScript エンジンである Mozilla SpiderMonkey を、これもソースコードからビルド&インストールします:
# cd /usr/local/src
# wget http://ftp.mozilla.org/pub/mozilla.org/js/mozjs17.0.0.tar.gz
# tar xzvf mozjs17.0.0.tar.gz
# cd mozjs17.0.0/js/src/
# ./configure
# make
# make install


ここまでの準備ができたら Apache CouchDB を、やはりソースコードからビルド&インストールします:
# cd /usr/local/src
# wget http://mirror.tcpdiag.net/apache/couchdb/source/1.6.1/apache-couchdb-1.6.1.tar.gz
# tar xzvf apache-couchdb-1.6.1.tar.gz
# cd apache-couchdb-1.6.1
# ./configure
# make
# make install


これで Apache CouchDB 本体のインストールは完了です。実行前に CouchDB 実行用のユーザーを作成し、関連モジュールのオーナーをそのユーザーに変更します。またシステム起動時に CouchDB サーバーも起動するように設定しておきます:
# adduser --no-create-home couchdb
# chown -R couchdb:couchdb /usr/local/var/lib/couchdb /usr/local/var/log/couchdb /usr/local/var/run/couchdb
# ln -sf /usr/local/etc/rc.d/couchdb /etc/init.d/couchdb
# chkconfig --add couchdb
# chkconfig couchdb on

ここまでの作業でデータベースサーバーとして動くようになっていますが、HTTP プロトコルからも利用できるよう(REST API で読み書きできるよう)設定しておきます。/usr/local/etc/couchdb/local.ini を編集し、[httpd] セクション以下のコメントを解除して、以下のようにします(ポート番号 5984 で、自分自身のデータベースサーバーを読み書きできるように設定しています):
# vi /usr/local/etc/couchdb/local.ini

[httpd]
port = 5984
bind_address = 0.0.0.0


では CouchDB を実行します:
# /etc/init.d/couchdb start

この状態でウェブブラウザを使って(local.ini で指定した)5984 番ポートにアクセスすると、以下の様な JSON メッセージが表示され、バージョン 1.6.1 の CouchDB が稼働していることを確認できます:
2016031601


また同サーバーの /_utils/ パスにアクセスすると、ウェブコンソールの概要ページにアクセスできます。この画面からであればコマンドによる API を発行しなくても、ウェブの画面から新規にデータベースやドキュメントを追加したり、確認したりすることもできます:
2016031603