GNU/Linux >> Linux の 問題 >  >> Linux

CentOS 6 に Apache CouchDB をインストールする方法 (ソースおよび EPEL から)

CouchDB に関する新しいシリーズを開始します。これは、CouchDB シリーズの最初の記事です。

CouchDB は Apache プロジェクトです。

その名の通りデータベースです。 CouchDB は NoSQL データベースです。 NoSQL データベースには、Oracle や MySQL などの従来のデータベースで通常見られるスキーマやテーブルなどはありません。 CouchDB のデータは JSON ドキュメントとして保存され、HTTP を使用して Web ブラウザからアクセスできます。

この記事では、RHEL ベースのシステムに CouchDB をインストールする方法について説明します。たとえば、CentOS、Red Hat、Oracle Enterprise Linux などです。

CouchDB をインストールするには 2 つの方法があります。 EPEL リポジトリからインストールするか、CouchDB ソース コードからインストールできます。

方法 1:EPEL からインストール

最初に、前に説明したように EPEL リポジトリを有効にします。

yumのインストールでcouchdbが利用可能であることを確認してください。

# yum info couchdb
Name        : couchdb
Arch        : x86_64
Version     : 1.0.3
Release     : 2.el6
Size        : 1.7 M
Repo        : epel
Summary     : A document database server, accessible via a RESTful JSON API

カウチデブをインストールします。システムによっては、これにより多くの依存パッケージがインストールされる場合があります。私のシステムでは、合計 36 個のパッケージがインストールされました。

# yum install couchdb

local.ini ファイルを変更し、bind_address の行を追加して、IP アドレスに、couchdb がインストールされているシステムを指定します。

# vi /etc/couchdb/local.ini
[httpd]
;port = 5984
;bind_address = 127.0.0.1
bind_address = 192.168.101.38

couchdb サービスを開始する

# service couchdb start
Starting couchdb:                [  OK  ]

# service couchdb status
couchdb (pid  29915) is running...

http://{your-ip-address}:5984 という URL にアクセスして、couchdb が機能することを確認します。次のメッセージを含む Web ページが表示されます。
{“couchdb”:“Welcome” ,”バージョン”:”1.0.3”}

http://{your-ip-address}:5984/_utils/ にアクセスしてください。ここから、couchdb データベースを作成および管理できます。

方法 2:CouchDB ソース コードからインストールする

ソース コードから自分でインストールする場合は、まずすべての依存関係を満たす必要があります。

CentOS リポジトリから次の標準パッケージをインストールします。

# yum info gcc libtool xulrunner-devel libicu-devel openssl-devel

アーランをインストール

ここから Erland の最新バージョンをダウンロードします。または、以下に示すように wget を使用して直接ダウンロードすることもできます。

cd /usr/src
wget http://www.erlang.org/download/otp_src_R15B01.tar.gz
tar xvfz otp_src_R15B01.tar.gz

/opt/couchdb ディレクトリの下に、couchdb とそのすべての依存関係をインストールします。そのため、erlang をインストールするときに、以下に示すようにプレフィックスを /opt/couchdb/erlang として指定してください。

cd otp_src_R15B01
./configure --prefix=/opt/couchdb/erlang --without-termcap --without-javac --enable-smp-support --disable-hipe
make
make install

カールをインストール

ここから最新バージョンの Curl をダウンロードします。または、以下に示すように wget を使用して直接ダウンロードすることもできます。

cd /usr/src
wget http://curl.haxx.se/download/curl-7.26.0.tar.gz
tar xvfz curl-7.25.0.tar.gz

Erlang と同じように、Curl も /opt/couchdb ディレクトリにインストールします。そのため、curl をインストールする際に、以下に示すようにプレフィックスを /opt/couchdb/curl として指定してください。

cd curl-7.25.0
./configure --prefix=/opt/couchdb/curl
make
make install

SpiderMonkey JS エンジン

ここから SpiderMonkey JS の最新バージョンをダウンロードします。または、以下に示すように wget を使用して直接ダウンロードすることもできます。

cd /usr/src
wget http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz
tar xvfz js185-1.0.0.tar.gz

Spidermonkey js エンジンをインストールするには、以下に示すように ./configure と make を実行するために、js-1.8.5 の下の「js/src」サブディレクトリに cd する必要があることに注意してください。

cd js-1.8.5/js/src
./configure
make
make install

libmozjs185.so.1.0.0 と libmozjs185-1.0.a が /usr/local/lib にインストールされていることがわかります

# ls -ltr /usr/local/lib
-rwxr-xr-x. 1 root root 3671764 May 30 09:39 libmozjs185.so.1.0.0
-rwxr-xr-x. 1 root root 5523616 May 30 09:39 libmozjs185-1.0.a
lrwxrwxrwx. 1 root root      35 May 30 09:40 libmozjs185.so.1.0 -> /usr/local/lib/libmozjs185.so.1.0.0
lrwxrwxrwx. 1 root root      33 May 30 09:40 libmozjs185.so -> /usr/local/lib/libmozjs185.so.1.0

注:Spidermonkey JS ライブラリがインストールされていない場合、次の手順で説明する ./configure を実行しようとすると、次のエラー メッセージが表示されます。

checking for JS_NewObject in -lmozjs185... no
configure: error: Could not find the js library.

Is the Mozilla SpiderMonkey library installed?

CouchDB をインストール

ここから Couchdb の最新バージョンをダウンロードします。または、以下に示すように wget を使用して直接ダウンロードすることもできます。

cd /usr/src
wget http://apache.mirrors.pair.com/couchdb/releases/1.2.0/apache-couchdb-1.2.0.tar.gz
tar xvfz apache-couchdb-1.2.0.tar.gz

couchdb をインストールする際、以下に示すように ERL、ERLC、CURL_CONFIG 環境変数を設定する必要があります。これらは、couchdb の ./config 中に必要です。

前提条件と同様に、couchdb を /opt/couchdb ディレクトリにインストールします。したがって、以下に示すように /opt/couchdb/couchdb のようにプレフィックスを付けてください。

cd apache-couchdb-1.2.0
export ERL=/opt/couchdb/erlang/bin/erl
export ERLC=/opt/couchdb/erlang/bin/erlc
export CURL_CONFIG=/opt/couchdb/curl/bin/curl-config
export LDFLAGS=-L/opt/couchdb/curl/lib
./configure --prefix=/opt/couchdb/couchdb --with-erlang=/opt/couchdb/erlang/lib/erlang/usr/include/ --enable-js-trunk
make
make install

注:–enable-js-trunk は、SpiderMonkey JS エンジンの最新バージョン (js185-1.0.0 より新しいもの) をインストールした場合にのみ使用します。 –enable-js-trunk オプションを使用することをお勧めします。

最新バージョンの Spidermonekey JS エンジンを使用していない場合は、フラグ –with-js-include および –with-js-lib を使用して、以下に示すように適切な場所を指定することをお勧めします。

./configure --prefix=/opt/couchdb/couchdb --with-erlang=/opt/couchdb/erlang/lib/erlang/usr/include/ --with-js-include=/usr/include/xulrunner-2/ --with-js-lib=/usr/lib64/xulrunner-devel-2/lib/

注:Spidermonkey js の最新バージョンをインストールしていて、–enable-js-trunk を使用していない場合、couchdb の「make」中に次のエラー メッセージが表示されます:

cc1: warnings being treated as errors
In file included from couch_js/main.c:20:
couch_js/sm170.c: In function req_status:
couch_js/sm170.c:105: error: implicit declaration of function INT_FITS_IN_JSVAL
couch_js/sm170.c: In function evalcx:
couch_js/sm170.c:138: error: implicit declaration of function JS_GetStringChars
couch_js/sm170.c:138: error: assignment makes pointer from integer without a cast
couch_js/sm170.c: In function seal:
couch_js/sm170.c:220: error: implicit declaration of function JS_SealObject
couch_js/sm170.c: At top level:
couch_js/sm170.c:236: error: initialization from incompatible pointer type

CouchDB スタートアップ サービスのセットアップ

couchdb 起動プログラムに必要なcouchdb ユーザーを作成します。

# adduser couchdb

couchdb がログやその他の情報を書き込む var ディレクトリの所有権を変更します。

# chown -R couchdb /opt/couchdb/couchdb/var/

/etc/init.dの下にcouchdbサービスのリンクを作成

# ln -s /opt/couchdb/couchdb/etc/rc.d/couchdb /etc/init.d/couchdb

最後に、couchdb サービスを開始します。

# service couchdb start
Starting database server couchdb

http://{your-ip-address}:5984 という URL にアクセスして、couchdb が機能することを確認します。次のメッセージを含む Web ページが表示されます。
{“couchdb”:“Welcome” ,”バージョン”:”1.0.3”}

http://{your-ip-address}:5984/_utils/ にアクセスしてください。そこから coucbdb データベースを作成および管理できます。

このシリーズの次の記事では、CouchDB データベースを作成し、基本的なデータ操作を実行する方法について説明します。


Linux
  1. CentOSのソースからPython3.5とPython-pipをコンパイルしてインストールする方法

  2. CentOS7にApacheとPHPをインストールする

  3. Linux にソースから Apache 2 をインストールする

  1. CentOS / RHELのソースからFFmpegをコンパイルしてインストールする方法は?

  2. Linux でソースから Nginx をインストールして構成する方法

  3. Linux でソースから (および YUM を使用して) MongoDB をインストールする方法

  1. CentOS7にCouchDBをインストールする方法

  2. SSL を使用して CentOS 6.2 にソースから Apache 2.4.2 をインストールする方法

  3. Linux でソース コードからソフトウェアをコンパイルしてインストールする方法