Apache CouchDB es una base de datos NoSQL gratuita y de código abierto desarrollada por Apache Software Foundation.
El servidor CouchDB almacena sus datos en bases de datos con nombre que contienen documentos con estructura JSON. Cada documento consta de una serie de campos y anexos. Los campos pueden incluir texto, números, listas, booleanos, más. Incluye una API HTTP RESTful que le permite leer, crear, editar y eliminar documentos de la base de datos.
En este tutorial, explicaremos cómo instalar la última versión de CouchDB en CentOS 7.
Requisitos previos #
Para poder instalar nuevos paquetes en su sistema CentOS, debe iniciar sesión como usuario con privilegios sudo.
Habilitar repositorio CouchDB #
El repositorio de CouchDB depende del repositorio de EPEL. Si el repositorio EPEL no está habilitado en su sistema, habilítelo escribiendo:.
sudo yum install epel-release
A continuación, abra el editor de su elección y cree el archivo de repositorio de CouchDB:
sudo nano /etc/yum.repos.d/bintray-apache-couchdb-rpm.repo
Pegue el siguiente contenido en el archivo:
/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
Guarde el archivo y cierre el editor.
Instalar CouchDB en CentOS #
Ahora que el repositorio está habilitado, puede instalar los paquetes de CouchDB usando el siguiente comando:
sudo yum install couchdb
Una vez completada la instalación, habilite e inicie el servicio CouchDB:
sudo systemctl start couchdb
sudo systemctl enable couchdb
De forma predeterminada, CouchDB escucha solo en localhost y no se crea ninguna cuenta de administrador.
Los datos de Apache CouchDB y los archivos de configuración se almacenan en el /opt/couchdb
directorio. Para crear una cuenta de administrador, abra local.ini
archivo y agregue una línea debajo de [admins]
sección en el formato username = password
.
sudo nano /opt/couchdb/etc/local.ini
/opt/couchdb/etc/local.ini[admins]
admin = mysecretpassword
Transforme la contraseña en un hash reiniciando el servicio CouchDB:
sudo systemctl restart couchdb
Use el mismo formato para agregar varias cuentas de administrador. Deberá reiniciar el servicio CouchDB después de agregar una nueva cuenta.
Usar curl
para crear las bases de datos del sistema:_users
, _replicator
y _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
Cada comando debe devolver lo siguiente:
{"ok":true}
Verificación de la instalación de CouchDB #
Para verificar si la instalación se realizó correctamente, emita el siguiente curl
comando que imprimirá la información de la base de datos de CouchDB en formato JSON:
curl http://127.0.0.1:5984/
Para mayor claridad, la salida a continuación está formateada.
{
"couchdb":"Welcome",
"version":"2.3.1",
"git_sha":"c298091a4",
"uuid":"17a6b911e0d5bfe36778b387510dbd93",
"features":[
"pluggable-storage-engines",
"scheduler"
],
"vendor":{
"name":"The Apache Software Foundation"
}
}
Si prefiere la GUI, puede acceder a la interfaz basada en web de CouchDB, Fauxton en:
http://127.0.0.1:5984/_utils/