Table des Matières

Introduction

Cette procédure permet d’installer le socle d’archivage de Maarch RM, sans extensions supplémentaires, dans un environnement Ubuntu/Debian. L’objectif est de disposer rapidement d’un environnement fonctionnel, avec un jeu de données par défaut pour effectuer des tests et évaluations.

Note : Pour l’installation d’extensions spécifiques (Archives Publiques, Coffre-Fort Numérique, Archives Courrier, etc.), veuillez consulter leur documentation respective.

Cette procédure a été réalisée sur un système Debian GNU Linux 10 64 bits vierge avec une base de données PostgreSQL 10.7.

Prérequis

Un accès administrateur (root ou sudo) est nécessaire.

Étapes d'installation

Étape 1 : Mise à jour du système

Mettez à jour votre système pour vous assurer que tous les paquets sont à jour.

sudo apt update && sudo apt upgrade -y
                    

Étape 2 : Installation des dépendances

Apache et PostgreSQL

Installez Apache2 et PostgreSQL en exécutant les commandes suivantes :

sudo apt install apache2 -y
sudo apt install postgresql postgresql-contrib -y
                        

PHP et extensions

Installez PHP et ses modules. Identifiez d’abord votre version de PHP avec php -v. Adaptez la commande en fonction de votre version, par exemple pour PHP 8.3 :

sudo apt install php libapache2-mod-php php-cli php-fpm -y
sudo apt install php8.3-pgsql php8.3-xml php8.3-mbstring -y
                        
  • php8.3-pgsql : support PostgreSQL
  • php8.3-xml : DOMDocument (nécessaire à Maarch RM)
  • php8.3-mbstring : fonctions multibytes (mb_convert_encoding)

Redémarrez Apache après l’installation :

sudo systemctl restart apache2
                        

wkhtmltopdf

Si votre serveur a une interface graphique, installez simplement :

sudo apt install wkhtmltopdf -y
                        

Si vous n’avez PAS d’interface graphique (serveur tête-less), installez xvfb et créez un script pour exécuter wkhtmltopdf en mode virtuel :

sudo apt install xvfb -y
printf '#!/bin/bash\nxvfb-run -a --server-args="-screen 0, 1024x768x24" /usr/bin/wkhtmltopdf -q $*' | sudo tee /usr/bin/newwkhtmltopdf.sh
sudo chmod a+x /usr/bin/newwkhtmltopdf.sh
sudo ln -s /usr/bin/newwkhtmltopdf.sh /usr/local/bin/wkhtmltopdf
                        

Étape 3 : Création de l’utilisateur système « maarch »

Créez un utilisateur maarch dans le groupe www-data :

sudo useradd -m -g www-data maarch
                

Modifiez le fichier /etc/apache2/envvars :

sudo nano /etc/apache2/envvars
                

Remplacez export APACHE_RUN_USER=www-data par :

export APACHE_RUN_USER=maarch
                

Enregistrez, quittez, puis testez la configuration :

apachectl configtest
                

Redémarrez Apache :

sudo systemctl restart apache2
                

Étape 4 : Configuration de la base PostgreSQL

Connectez-vous en tant qu’utilisateur postgres et créez l’utilisateur et la base :

sudo -u postgres psql
                

Dans psql :

CREATE USER maarch WITH ENCRYPTED PASSWORD 'maarch';
ALTER ROLE maarch WITH CREATEDB;
ALTER ROLE maarch WITH SUPERUSER;
CREATE DATABASE "maarchRM" WITH OWNER maarch;
\q
exit
                

Étape 5 : Récupération des sources Maarch RM

Si nécessaire, installez git :

sudo apt install git -y
                

Récupérez les sources dans /var/www :

cd /var/www
sudo git clone https://labs.maarch.org/maarch/maarchRM.git laabs
                

Ajustez les permissions :

sudo chown -R maarch:www-data laabs/
sudo chmod -R 775 laabs/
                

Étape 6 : Création des espaces de stockage

Maarch RM a besoin de répertoires pour stocker les archives :

sudo mkdir -p /var/www/laabs/data/maarchRM/repository/archives_1
sudo mkdir -p /var/www/laabs/data/maarchRM/repository/archives_2
                

Redonnez les bonnes permissions (si nécessaire) :

cd /var/www
sudo chown -R maarch:www-data laabs/
sudo chmod -R 775 laabs/
                

Étape 7 : Création de la structure et des données dans la base

Exécutez les scripts SQL :

cd /var/www/laabs/data/maarchRM/batch/pgsql
sudo chmod +x *.sh

# Création de la structure (tables)
./schema.sh -u=maarch -p=5432 -d="maarchRM" -h=127.0.0.1

# Création du jeu de données de démonstration (recommandé)
./data.sh -u=maarch -p=5432 -d="maarchRM" -h=127.0.0.1

# Pour un jeu de données minimal en production, utilisez data.min.sh.
./data.min.sh -u=maarch -p=5432 -d="maarchRM" -h=127.0.0.1
                

Étape 8 : Configuration de l’application

Copiez les fichiers de configuration par défaut :

sudo cp /var/www/laabs/data/maarchRM/conf/configuration.ini.default /var/www/laabs/data/maarchRM/conf/configuration.ini
sudo cp /var/www/laabs/data/maarchRM/conf/confvars.ini.default /var/www/laabs/data/maarchRM/conf/confvars.ini
sudo cp /var/www/laabs/data/maarchRM/conf/vhost.conf.default /var/www/laabs/data/maarchRM/conf/vhost.conf
                

Éditez confvars.ini pour paramétrer l’accès à la base PostgreSQL :

@var.dsn = "pgsql:host=localhost;dbname=maarchRM;port=5432"
@var.username = maarch
@var.password = maarch
                

Étape 9 : Configuration Apache du VirtualHost

Incluez le vhost dans Apache :

echo "Include /var/www/laabs/data/maarchRM/conf/vhost.conf" | sudo tee /etc/apache2/sites-available/maarchRM.conf
                

Vérifiez /var/www/laabs/data/maarchRM/conf/vhost.conf :


    DocumentRoot /var/www/laabs/web/
    ServerName maarchrm

    
        AllowOverride All
        Require all granted
        Options Indexes FollowSymLinks MultiViews
    

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

                

Activez le site :

sudo a2enmod rewrite
sudo a2ensite maarchRM.conf
sudo systemctl restart apache2
                

Mettez à jour le fichier /etc/hosts pour résoudre le nom maarchrm :

echo "127.0.0.1 maarchrm" | sudo tee -a /etc/hosts
                

Vous pouvez désormais accéder à l’application via :

http://maarchrm/

L’administrateur fonctionnel par défaut est superadmin / superadmin.

Problèmes Courants et Solutions

Conclusion

Vous disposez maintenant d’une installation complète du socle d’archivage Maarch RM, avec une base de données correctement configurée, les espaces de stockage créés, et le serveur Apache prêt à servir l’application. En cas de souci, référez-vous aux logs Apache :

sudo tail -f /var/log/apache2/error.log
                

Consultez la documentation officielle Maarch RM pour l’architecture technique, la configuration fine ou l’installation d’extensions spécifiques.

Votre application est accessible à l’URL :

http://maarchrm/

Identifiants par défaut :

Vous pouvez maintenant explorer et tester les fonctionnalités de Maarch RM.