Apache CouchDBは、ApacheSoftwareFoundationによって開発された無料のオープンソースNoSQLデータベースです。
CouchDBサーバーは、JSON構造のドキュメントを含む名前付きデータベースにデータを格納します。各ドキュメントは、いくつかのフィールドと添付ファイルで構成されています。フィールドには、テキスト、数値、リスト、ブール値などを含めることができます。データベースドキュメントの読み取り、作成、編集、削除を可能にするRESTfulHTTPAPIが含まれています。
このチュートリアルでは、CentOS7に最新バージョンのCouchDBをインストールする方法を説明します。
前提条件#
CentOSシステムに新しいパッケージをインストールできるようにするには、sudo権限を持つユーザーとしてログインする必要があります。
CouchDBリポジトリを有効にする#
CouchDBリポジトリはEPELリポジトリに依存しています。システムでEPELリポジトリが有効になっていない場合は、次のように入力して有効にします。
sudo yum install epel-release
次に、選択したエディターを開き、CouchDBリポジトリーファイルを作成します。
sudo nano /etc/yum.repos.d/bintray-apache-couchdb-rpm.repo
次のコンテンツをファイルに貼り付けます:
/etc/yum.repos.d/bintray-apache-couchdb-rpm.repo[bintray--apache-couchdb-rpm]
name=bintray--apache-couchdb-rpm
baseurl=http://apache.bintray.com/couchdb-rpm/el$releasever/$basearch/
gpgcheck=0
repo_gpgcheck=0
enabled=1
ファイルを保存してエディタを閉じます。
CentOSにCouchDBをインストールする#
リポジトリが有効になったので、次のコマンドを使用してCouchDBパッケージをインストールできます。
sudo yum install couchdb
インストールが完了したら、CouchDBサービスを有効にして開始します。
sudo systemctl start couchdb
sudo systemctl enable couchdb
デフォルトでは、CouchDBはローカルホストでのみリッスンし、管理者アカウントは作成されません。
ApacheCouchDBのデータと構成ファイルは/opt/couchdb
に保存されます ディレクトリ。管理者アカウントを作成するには、local.ini
を開きます ファイルを作成し、[admins]
の下に行を追加します username = password
の形式のセクション 。
sudo nano /opt/couchdb/etc/local.ini
/opt/couchdb/etc/local.ini [admins]
admin = mysecretpassword
CouchDBサービスを再起動して、パスワードをハッシュに変換します。
sudo systemctl restart couchdb
同じ形式を使用して、複数の管理者アカウントを追加します。新しいアカウントを追加した後、CouchDBサービスを再起動する必要があります。
curl
を使用する システムデータベースを作成するには:_users
、_replicator
および_global_changes
:
curl -u ADMINUSER:PASS -X PUT http://127.0.0.1:5984/_users
curl -u ADMINUSER:PASS -X PUT http://127.0.0.1:5984/_replicator
curl -u ADMINUSER:PASS -X PUT http://127.0.0.1:5984/_global_changes
各コマンドは次を返す必要があります:
{"ok":true}
CouchDBインストールの確認#
インストールが正常に実行されたかどうかを確認するには、次のcurl
を発行します CouchDBデータベース情報をJSON形式で出力するコマンド:
curl http://127.0.0.1:5984/
わかりやすくするために、以下の出力はフォーマットされています。
{
"couchdb":"Welcome",
"version":"2.3.1",
"git_sha":"c298091a4",
"uuid":"17a6b911e0d5bfe36778b387510dbd93",
"features":[
"pluggable-storage-engines",
"scheduler"
],
"vendor":{
"name":"The Apache Software Foundation"
}
}
GUIを使用する場合は、CouchDBのWebベースのインターフェースであるFauxtonにアクセスできます。
http://127.0.0.1:5984/_utils/