GNU/Linux >> Tutoriels Linux >  >> Linux

Comment installer Apache CouchDB sur CentOS 6 (à partir de Source et EPEL)

Nous commençons une nouvelle série sur CouchDB. Ceci est le premier article de la série CouchDB.

CouchDB est un projet Apache.

Comme son nom l'indique, il s'agit d'une base de données. CouchDB est une base de données NoSQL. Les bases de données NoSQL n'ont pas de schéma, de tables, etc., que vous verrez généralement dans des bases de données traditionnelles comme Oracle ou MySQL. Les données dans CouchDB sont stockées sous forme de document JSON, auquel vous pouvez accéder à partir d'un navigateur Web via HTTP.

Cet article explique comment installer CouchDB sur des systèmes basés sur RHEL. Par exemple, CentOS, Red Hat, Oracle Enterprise Linux, etc.

Il existe deux méthodes pour installer CouchDB. Vous pouvez l'installer à partir du référentiel EPEL ou l'installer à partir du code source de CouchDB.

Méthode 1 :Installer à partir d'EPEL

Tout d'abord, activez le référentiel EPEL comme nous l'avons expliqué précédemment.

Vérifiez que le couchdb est disponible pour l'installation de yum.

# 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

Installez couchdb. Selon votre système, cela peut installer de nombreux packages dépendants. Sur mon système, il a installé 36 packages au total.

# yum install couchdb

Modifiez le fichier local.ini et ajoutez une ligne pour bind_address et donnez l'adresse IP du système sur lequel couchdb est installé.

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

Démarrer les services couchdb

# service couchdb start
Starting couchdb:                [  OK  ]

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

Vérifiez que le couchdb fonctionne en accédant à l'URL :http://{your-ip-address}:5984 , il devrait afficher une page Web contenant le message suivant.
{"couchdb":"Welcome" ,"version":"1.0.3″}

Accédez à :http://{your-ip-address}:5984/_utils/ à partir duquel vous pouvez créer et gérer la base de données couchdb.

Méthode 2 :Installer à partir du code source de CouchDB

Si vous souhaitez l'installer vous-même à partir du code source, vous devez d'abord satisfaire toutes les dépendances.

Installez les packages standard suivants à partir du référentiel CentOS.

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

Installer Erlang

Téléchargez la dernière version d'Erland à partir d'ici. Ou, vous pouvez utiliser le wget comme indiqué ci-dessous pour le télécharger directement.

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

Nous allons installer couchdb et toutes ses dépendances sous le répertoire /opt/couchdb. Ainsi, lors de l'installation d'erlang, donnez le préfixe /opt/couchdb/erlang comme indiqué ci-dessous.

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

Installer Curl

Téléchargez la dernière version de Curl à partir d'ici. Ou, vous pouvez utiliser le wget comme indiqué ci-dessous pour le télécharger directement.

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

Tout comme Erlang, nous allons également installer Curl sous le répertoire /opt/couchdb. Ainsi, lors de l'installation de curl, donnez le préfixe /opt/couchdb/curl comme indiqué ci-dessous.

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

Moteur JS SpiderMonkey

Téléchargez la dernière version de SpiderMonkey JS à partir d'ici. Ou, vous pouvez utiliser le wget comme indiqué ci-dessous pour le télécharger directement.

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

Veuillez noter que vous devez cd dans le sous-répertoire "js/src" sous js-1.8.5 pour faire le ./configure et faire comme indiqué ci-dessous pour installer le moteur spidermonkey js.

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

Vous verrez les libmozjs185.so.1.0.0 et libmozjs185-1.0.a installés sous /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

Remarque :Si la bibliothèque spidermonkey JS n'est pas installée, vous obtiendrez le message d'erreur suivant en essayant de faire le ./configure mentionné à l'étape suivante.

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

Is the Mozilla SpiderMonkey library installed?

Installer CouchDB

Téléchargez la dernière version de Couchdb ici. Ou, vous pouvez utiliser le wget comme indiqué ci-dessous pour le télécharger directement.

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

Lors de l'installation de couchdb, vous devez définir les variables d'environnement ERL, ERLC, CURL_CONFIG comme indiqué ci-dessous. Ceux-ci sont requis lors du ./config de couchdb.

Tout comme les prérequis, nous allons installer couchdb sous le répertoire /opt/couchdb. Alors, donnez le préfixe comme /opt/couchdb/couchdb comme indiqué ci-dessous.

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

Remarque :Vous n'utiliserez l'option -enable-js-trunk que si vous avez installé la dernière version (plus récente que js185-1.0.0) du moteur SpiderMonkey JS. Je vous recommande d'utiliser l'option –enable-js-trunk.

Si vous n'utilisez pas la dernière version du moteur spidermonekey JS, vous pouvez utiliser les drapeaux -with-js-include et -with-js-lib et le pointer vers l'emplacement approprié, comme indiqué ci-dessous.

./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/

Remarque :Si vous avez installé la dernière version de spidermonkey js et si vous n'utilisez pas -enable-js-trunk, vous obtiendrez le message d'erreur suivant lors du "make" de couchdb :

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

Configurer les services de démarrage de CouchDB

Créez un utilisateur couchdb requis par le programme de démarrage couchdb.

# adduser couchdb

Modifiez la propriété du répertoire var, où couchdb écrira les journaux et d'autres informations.

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

Créez un lien sous /etc/init.d pour le service couchdb

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

Démarrez enfin le service couchdb.

# service couchdb start
Starting database server couchdb

Vérifiez que le couchdb fonctionne en accédant à l'URL :http://{your-ip-address}:5984 , il devrait afficher une page Web contenant le message suivant.
{"couchdb":"Welcome" ,"version":"1.0.3″}

Accédez à :http://{your-ip-address}:5984/_utils/ d'où vous pouvez créer et gérer la base de données coucbdb.

Le prochain article de cette série expliquera comment créer une base de données CouchDB et effectuer quelques manipulations de base des données.


Linux
  1. Comment compiler et installer Python3.5 et Python-pip à partir de la source sur CentOS

  2. Installer Apache et PHP sur CentOS 7

  3. Installer Apache 2 à partir de la source sur Linux

  4. Comment installer Apache 2.4.2 à partir de la source sur CentOS 6.2 avec SSL

  5. Comment installer MongoDB à partir de la source (et en utilisant YUM) sous Linux

Comment installer Apache CouchDB sur CentOS 7

Comment installer Apache CouchDB sur CentOS 8

Comment installer Apache Tomcat 9 sur CentOS 7

Comment installer et configurer GlusterFS sur CentOS 7/CentOS 8

Comment installer Apache dans CentOS 8

Comment installer EPEL Repo sur CentOS et RHEL 7 ?