Compilation
Installer les dépendances :
apt-get update && apt-get --no-install-recommends -y install \ ca-certificates \ curl \ net-tools \ nginx \ sudo \ vim-tiny \ build-essential \ pkg-config \ erlang \ libicu-dev \ libmozjs185-dev \ libcurl4-openssl-dev
Télécharger les sources, ici la version 2.1.0
cd /tmp curl -LO https://dist.apache.org/repos/dist/release/couchdb/source/2.1.0/apache-couchdb-2.1.0.tar.gz
Extraire et compiler les sources
tar xf apache-couchdb-2.1.0.tar.gz cd apache-couchdb-2.1.0 ./configure make release
Puis créer l’utilisateur dédié
adduser --system \ --no-create-home \ --shell /bin/bash \ --group --gecos \ "CouchDB Administrator" couchdb
Installation
Nous installons CouchDB dans le répertoire /home/couchdb
cp -R rel/couchdb /home/couchdb chown -R couchdb:couchdb /home/couchdb find /home/couchdb -type d -exec chmod 0770 {} \; chmod -R 0644 /home/couchdb/etc/* mkdir /var/log/couchdb && chown couchdb: /var/log/couchdb
Création du fichier de service
cat <<EOT >> /etc/systemd/system/couchdb.service [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 [Install] WantedBy=multi-user.target EOT
Et enregistrement du service
systemctl daemon-reload systemctl start couchdb.service systemctl enable couchdb.service
Configuration
Création des bases par défaut
HOST="http://127.0.0.1:5984" curl -X PUT $HOST/_users curl -X PUT $HOST/_replicator curl -X PUT $HOST/_global_changes
Ajout d’un administrateur
Vous trouverez l’interface d’administration à l’adresse suivante
http://127.0.0.1:5984/_utils/
Il est alors possible d’y créer un compte administrateur.
Sources
http://docs.couchdb.org/en/2.1.0/install/setup.html
https://docs.cozy.io/en/install/manual/