Установка Apache CouchDB 1.6 в Ubuntu 16.04

CouchDB — NoSQL база данных с открытым исходным кодом, не требующая описания схемы данных, распространяется свободно, написана на языке Erlang. Впервые вышла в 2005 году, с 2008 года — проект фонда Apache. Реализована в рамках подхода NoSQL. Для хранения данных используется JSON, для реализации MapReduce-запросов — JavaScript.

Одной из особенностей СУБД является поддержка репликации с несколькими ведущими узлами. CouchDB используется во многих программных продуктах и на множестве веб-сайтов, в том числе BBC, Firefox, TomBoy, Akonadi, Evolution и другие.

CouchDB управляет коллекцией документов JSON. Документы организуются по представлениям (англ. views). Представления определяются агрегатными функциями и фильтрами, вычисленными параллельно подобно MapReduce. Приложения взаимодействуют с CouchDB через HTTP.

Установка Apache CouchDB 1.6 в Ubuntu 16.04

Установка CouchDB предельно проста и выполняется с помощью подключения PPA репозитория.

sudo apt-get install software-properties-common -y
sudo add-apt-repository ppa:couchdb/stable -y
sudo apt-get update -y
sudo apt-get install software-properties-common -y
sudo add-apt-repository ppa:couchdb/stable -y
sudo apt-get update -y

Удалим любые предыдущие установки

sudo apt-get remove couchdb couchdb-bin couchdb-common -yf
sudo apt-get remove couchdb couchdb-bin couchdb-common -yf

Поставим CouchDB

sudo apt-get install -V couchdb
sudo apt-get install -V couchdb

Управляем базой данных через systemd

sudo systemctl stop couchdb
sudo systemctl start couchdb
sudo systemctl status couchdb
sudo systemctl stop couchdb
sudo systemctl start couchdb
sudo systemctl status couchdb

Файл конфигурации

vim /etc/couchdb/local.ini
vim /etc/couchdb/local.ini

Если хотим что-бы база слушала на всех интeрфейсах

[httpd]
port = 5984
bind_address = 0.0.0.0
[httpd]
port = 5984
bind_address = 0.0.0.0

Делаем ей рестарт

sudo systemctl restart couchdb
sudo systemctl restart couchdb

Теперь можно проверить установки выполнив HTTP запрос к базе

curl http://10.0.0.157:5984
{"couchdb":"Welcome","uuid":"ee088f8838f1548a166c4a8f12fc99bc","version":"1.6.0","vendor":{"name":"Ubuntu","version":"15.10"}}
curl http://10.0.0.157:5984
{"couchdb":"Welcome","uuid":"ee088f8838f1548a166c4a8f12fc99bc","version":"1.6.0","vendor":{"name":"Ubuntu","version":"15.10"}}

Можно добавить базу данных

curl -X PUT http://127.0.0.1:5984/baseball
{"ok":true}
curl -X PUT http://127.0.0.1:5984/baseball
{"ok":true}

Можно посмотреть список баз данных

curl -X GET http://127.0.0.1:5984/_all_dbs
["_replicator","_users","baseball","testbase"]
curl -X GET http://127.0.0.1:5984/_all_dbs
["_replicator","_users","baseball","testbase"]

Можно проверить версию

curl -X GET http://127.0.0.1:5984/_config/vendor/version
"15.10"
curl -X GET http://127.0.0.1:5984/_config/vendor/version
"15.10"

А можно пойти взглянуть на Web-интерфейс

http://10.0.0.157:5984/_utils/index.html
http://10.0.0.157:5984/_utils/index.html

ScreenShotCouchDB