Estamos desarrollando un proyecto que utilizará mini y micro ordenadores, y para prototipar la instalación utilizamos RaspberryPi 3 modelo B+, que lleva un microprocesador Broadcom BCM2837B0, Cortex-A53 (ARMv8) 64-bit SoC @ 1.4GHz.
Como sistema de base de datos nos decantamos por CouchDB, por lo siguiente: - Reducido tamaño en disco
y un largo etc …
El inconveniente es que no hay paquete para microprocesadores ARM en los repositorios de Debian, y nos recomiendan la instalación desde el código fuente. El HowTo de la web de CouchDB, aunque completo y detallado, tiene algunos fallos con la instalación en Raspbian. Encontramos varios manuales de instalación, pero eran incompleto, o no eran compatibles con la instalación en el Raspbian. Como instalar CouchDB desde el código fuente en Raspbian de 64bits en RapsberryPi 3 modelo B+- Actualizar el sistema operativo
apt-get update && apt-get -y dist-upgrade
apt-get --no-install-recommends -y install build-essential pkg-config erlang erlang-nox erlang-dev erlang-reltool libicu-dev libmozjs185-dev libcurl4-openssl-dev libicu-dev libmozjs185-1.0 libmozjs185-dev curl
wget http://apache.rediris.es/couchdb/source/2.3.0/apache-couchdb-2.3.0.tar.gz
tar xvzf apache-couchdb-2.3.0.tar.gz
cd apache-couchdb-2.3.0
./configure
make
make release
adduser --systcode --shell /bin/bash --group --gecos "CouchDB Administrator" couchdb
cp -r rel/couchdb/* /home/couchdb/
chown -R couchdb:couchdb /home/couchdb
find /home/couchdb -type d -exec chmod 0770 {} \;
chmod 0644 /home/couchdb/etc/*
sudo -i -u couchdb /home/couchdb/bin/couchdb
curl -X PUT http://127.0.0.1:5984/_users
curl -X PUT http://127.0.0.1:5984/_replicator
curl -X PUT http://127.0.0.1:5984/_global_changes
curl http://127.0.0.1:5984
Nos debe dar como respuesta algo parecido a lo siguiente
{"couchdb":"Welcome","version":"2.3.0","git_sha":"07ea0c7","uuid":"a4c3673efdde48d8d301fff79cfd92ff","features":["pluggable-storage-engines","scheduler"],"vendor":{"name":"The Apache Software Foundation"}}
Si necesitamos que CouchDB se inicie al encender el ordenador, debemos seguir estos pasos extras - Crear el archivo “couchdb.service” para iniciar el servicio por SystemD
nano /etc/systemd/system/couchdb.service
Agregar el siguiente contenido
[Unit]
Description=Couchdb service
After=network.target
[Service]
Type=simple
User=couchdb
ExecStart=/home/couchdb/bin/couchdb -o /dev/stdout -e /dev/stderr
Restart=always
Ahora podremos utilizar los siguientes comandos
systemctl start couchdb.service - Para iniciar el servicio
systemctl stop couchdb.service - Para detener el servicio
systemctl restart couchdb.service - Para re-iniciar el servicio
systemctl status couchdb.service - Para comprobar el estado del servicio
Si es necesario acceder desde un ordenador remoto al servidor CouchDB - Modificar el archivo “default.ini”
nano /home/couchdb/etc/default.ini
bind_address = 127.0.0.1
bind_address = 0.0.0.0
systemctl restart couchdb.service
curl http://IP_Servido_CouchDB:5984
{"couchdb":"Welcome","version":"2.3.0","git_sha":"07ea0c7","uuid":"a4c3673efdde48d8d301fff79cfd92ff","features":["pluggable-storage-engines","scheduler"],"vendor":{"name":"The Apache Software Foundation"}}
Ayudas que utilizamos