Compilation, installation et configuration de CouchDB sur Debian Strech

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/

 

 

Matomo encountered an error: Uncaught Piwik\Exception\DatabaseSchemaIsNewerThanCodebaseException: Your Matomo codebase is running the old version 4.14.2 and we have detected that your Matomo Database has already been upgraded to the newer version 4.15.1. Maybe your Matomo administrators are currently finishing the upgrade process. Please try again in a few minutes. If you still have this issue please contact your Matomo administrator for assistance. in /var/www/piwik/core/FrontController.php:692 Stack trace: #0 /var/www/piwik/core/FrontController.php(387): Piwik\FrontController->throwIfPiwikVersionIsOlderThanDBSchema() #1 /var/www/thegtricks/wp-content/plugins/wp-piwik/classes/WP_Piwik/Request/Php.php(40): Piwik\FrontController->init() #2 /var/www/thegtricks/wp-content/plugins/wp-piwik/classes/WP_Piwik/Request/Php.php(18): WP_Piwik\Request\Php->call() #3 /var/www/thegtricks/wp-content/plugins/wp-piwik/classes/WP_Piwik/Request.php(63): WP_Piwik\Request\Php->request() #4 /var/www/thegtricks/wp-content/plugins/wp-piwik/classes/WP_Piwik.php(1038): WP_Piwik\Request->perform() #5 /var/www/thegtricks/wp-content/plugins/wp-piwik/classes/WP_Piwik.php(1205): WP_Piwik->request() #6 /var/www/thegtricks/wp-content/plugins/wp-piwik/classes/WP_Piwik/TrackingCode.php(16): WP_Piwik->updateTrackingCode() #7 /var/www/thegtricks/wp-content/plugins/wp-piwik/classes/WP_Piwik.php(296): WP_Piwik\TrackingCode->__construct() #8 /var/www/thegtricks/wp-includes/class-wp-hook.php(324): WP_Piwik->addJavascriptCode() #9 /var/www/thegtricks/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters() #10 /var/www/thegtricks/wp-includes/plugin.php(517): WP_Hook->do_action() #11 /var/www/thegtricks/wp-includes/general-template.php(3068): do_action() #12 /var/www/thegtricks/wp-content/themes/twentyfifteen-child/footer.php(45): wp_footer() #13 /var/www/thegtricks/wp-includes/template.php(790): require_once('...') #14 /var/www/thegtricks/wp-includes/template.php(725): load_template() #15 /var/www/thegtricks/wp-includes/general-template.php(92): locate_template() #16 /var/www/thegtricks/wp-content/themes/twentyfifteen/archive.php(68): get_footer() #17 /var/www/thegtricks/wp-includes/template-loader.php(106): include('...') #18 /var/www/thegtricks/wp-blog-header.php(19): require_once('...') #19 /var/www/thegtricks/index.php(17): require('...') #20 {main} thrown (which lead to: Session must be started before any output has been sent to the browser; output started in /var/www/thegtricks/wp-includes/script-loader.php/2925)