Apache CouchDB es una base de datos NoSQL gratuita y de código abierto desarrollada por Apache Software Foundation. Se puede utilizar como una base de datos de un solo nodo o en clúster.
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 RESTful HTTP que le permite leer, crear, editar y eliminar documentos de bases de datos.
En este artículo, cubriremos la instalación de CouchDB en CentOS 8.
Habilitación del repositorio de CouchDB #
La forma más fácil de instalar CouchDB en CentOS 8 es habilitar el repositorio del proveedor e instalar los paquetes binarios.
Abra el editor de su elección como raíz o usuario con privilegios sudo 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.
Instalando CouchDB en CentOS #
Instale los paquetes de CouchDB ejecutando el siguiente comando:
sudo dnf install couchdb
Una vez completada la instalación, habilite e inicie el servicio CouchDB:
sudo systemctl enable --now couchdb
Configurando CouchDB #
CouchDB se puede configurar en modo de nodo único o en clúster. En este ejemplo, implementaremos el servidor en una configuración de un solo nodo. Consulte la documentación oficial sobre cómo configurar CouchDB en modo agrupado.
Puede configurar CouchDB usando Fauxton, en http://127.0.0.1:5984/_utils#setup
o desde la línea de comandos. El asistente de configuración lo guiará a través de la selección del modo y la creación del administrador.
Crearemos el usuario administrador y las bases de datos desde la línea de comandos.
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
Reinicie el servicio CouchDB para cambiar la contraseña a un hash:
sudo systemctl restart couchdb
Puede usar el mismo formato para agregar varias cuentas de administrador. Siempre reinicie 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 #
El servidor CouchDB se ejecuta en localhost:5984
. Para verificar si la instalación fue exitosa y si el servicio se está ejecutando, ejecute el siguiente curl
comando que imprimirá información sobre la base de datos 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":"5e3878666b1077eb9d4a7ba7b06c251b",
"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/