Cette procédure va vous guider pas à pas dans l'installation de Maarch RM.
L'application est livrée avec une configuration et un jeu de données par défaut qui permettent de faire fonctionner le système d'archivage en mode "démonstration". Pour une installation personnalisée, nous vous invitons à prendre connaissance des documentations dédiées à l'architecture technique du logiciel et à sa configuration.
Cette procédure a été réalisée sur un système Debian GNU Linux 8 64 bit vierge avec une base de données PostgreSQL 9.4.
La plupart des commandes qui seront exécutées nécessiteront des droits administrateur (root) sur le système.
Module Apache rewrite_module
a2enmod rewrite
Module Apache env_module
a2enmod env
Extension PHP mcrypt (supprimé en 7.2)
apt-get install php-mcrypt
Extension PHP pdo
apt-get install php-pdo
apt-get install php-pdo-pgsql
apt-get install php-xsl
apt-get install libapache2-mod-php
apt-get install p7zip-full
apt-get install default-jre
apt-get install git
OpenSSL
apt-get install openssl
Espace disque à définir selon la volumétrie des échanges, 1Go conseillé.
Sur le serveur, créer un utilisateur "maarch" ayant un répertoire "home" avec le groupe "www-data" :
useradd -m -g www-data maarch
Afin que cet utilisateur puisse lancer les conversions et les batchs, il faut qu'il puisse lancer le serveur Apache2. Pour cela il faut éditer le fichier de configuration d'Apache2 (/etc/apache2/envvars). Modifier le fichier avec la valeur :
export APACHE_RUN_USER=maarch
Il est possible de tester la configuration du serveur Apache avec la commande suivante :
service apache2 configtest
Serveur PostgreSQL 9.4 ou supérieur
apt-get install postgresql
Maarch RM est livré par téléchargement des sources à partir du Gitlab (git) de Maarch.
À partir du répertoire web du serveur (habituellement /var/www), récupérer les sources de l'application.
Un dossier ''laabs'' se crée automatiquement.
cd /var/www
git clone https://labs.maarch.org/maarch/maarchRM.git laabs
Si vous souhaitez ajouter des extensions, voici la marche à suivre :
Archives publiques (archivesPubliques)
cd /var/www/laabs/src/ext
git clone https://labs.maarch.org/maarch/thirdPartyArchiving.git thirdPartyArchiving
git clone https://labs.maarch.org/maarch/archivesPubliques.git archivesPubliques
OU :
Archives courriers (archivesCourrier)
cd /var/www/laabs/src/ext
git clone https://labs.maarch.org/maarch/thirdPartyArchiving.git thirdPartyArchiving
git clone https://labs.maarch.org/maarch/archivesPubliques.git archivesPubliques
git clone https://labs.maarch.org/maarch/archivesCourrier.git archivesCourrier
mkdir -p /var/www/laabs/data/maarchRM/repository/archives_1
mkdir -p /var/www/laabs/data/maarchRM/repository/archives_2
À partir de la zone web (/var/www), remettre si nécessaire les droits et autorisation sur l'ensemble de la zone :
cd /var/www
chown -R maarch:www-data laabs/
chmod -R 775 laabs/
(Optionnel si vous possédez déjà un utilisateur avec les droits pour gérer la base de données de l'application)
Se connecter en tant qu'utilisateur postgres (depuis l'utilisateur administrateur, aucun mot de passe n'est nécessaire) et exécuter la commande suivante :
psql
CREATE USER maarch;
ALTER ROLE maarch WITH CREATEDB;
ALTER ROLE maarch WITH SUPERUSER;
ALTER USER maarch WITH ENCRYPTED PASSWORD 'maarch';
CREATE DATABASE "maarchRM" WITH OWNER maarch;
\q
exit
Nous venons de créer un utilisateur postgres 'maarch' avec le mot de passe 'maarch'.
Attention, la commande suivante doit être exécutée en root ! thirdPartyArchiving : **, archivesPubliques : /var/www/laabs/src/ext/archivesPubliques/data/batch** À partir du répertoire contenant les scripts développées pour l'application Maarch RM, exécuter.
cd /var/www/laabs/data/maarchRM/batch/pgsql
./schema.sh -u=maarch -p=5432 -d="maarchRM" -h=127.0.0.1
cd /var/www/laabs/src/ext/thirdPartyArchiving/data/batch/pgsql
./schema.sh -u=maarch -p=5432 -d="maarchRM" -h=127.0.0.1
cd /var/www/laabs/src/ext/archivesPubliques/data/batch/pgsql
./schema.sh -u=maarch -p=5432 -d="maarchRM" -h=127.0.0.1
En ce qui concerne les données, deux options s'offrent à vous.
Vous pouvez exécuter ce script avec des données de tests correspondantes au guide de visite :
Socle d'Archivage
./data_fr.sh -u=maarch -p=5432 -d="maarchRM" -h=127.0.0.1
Les extensions
./data.sh -u=maarch -p=5432 -d="maarchRM" -h=127.0.0.1
ou un script avec les données minimum permettant d'utiliser l'application Maarch RM en production :
./data.min.sh -u=maarch -p=5432 -d="maarchRM" -h=127.0.0.1
Maintenant, nous devons copier les modèles de configuration et enlever l'extention ".default" des différents fichiers. Une seule configuration est necessaire, de ce fait, si une ou plusieurs extensions sont utilisées, il faut prendre la configuration de la dernière extension choisie et non celle du socle d'archivage.
cd /var/www/laabs/data/maarchRM/conf/
cp /var/www/laabs/data/maarchRM/conf/configuration.ini.default /var/www/laabs/data/maarchRM/conf/configuration.ini
cp /var/www/laabs/data/maarchRM/conf/confvars.ini.default /var/www/laabs/data/maarchRM/conf/confvars.ini
cp /var/www/laabs/data/maarchRM/conf/vhost.conf.default /var/www/laabs/data/maarchRM/conf/vhost.conf
cd /var/www/laabs/src/ext/thirdPartyArchiving/data/conf/
cp /var/www/laabs/src/ext/thirdPartyArchiving/data/conf/configuration.ini.default /var/www/laabs/src/ext/thirdPartyArchiving/data/conf/configuration.ini
cp /var/www/laabs/src/ext/thirdPartyArchiving/data/conf/confvars.ini.default /var/www/src/ext/thirdPartyArchiving/data/conf/confvars.ini
cp /var/www/laabs/src/ext/thirdPartyArchiving/data/conf/vhost.conf.default /var/www/laabs/src/ext/thirdPartyArchiving/data/conf/vhost.conf
cd /var/www/laabs/src/ext/archivesPubliques/data/conf/
cp /var/www/laabs/src/ext/archivesPubliques/data/conf/configuration.ini.default /var/www/laabs/src/ext/archivesPubliques/data/conf/configuration.ini
cp /var/www/laabs/src/ext/archivesPubliques/data/conf/confvars.ini.default /var/www/laabs/src/ext/archivesPubliques/data/conf/confvars.ini
cp /var/www/laabs/src/ext/archivesPubliques/data/conf/vhost.conf.default /var/www/laabs/src/ext/archivesPubliques/data/conf/vhost.conf
Pour cette extension, nous utilisons les differents fichiers de configurations d'archives publiques auquels nous allons apporter quelques modifications.
cd /var/www/laabs/src/ext/archivesPubliques/data/conf/
cp /var/www/laabs/src/ext/archivesPubliques/data/conf/configuration.ini.default /var/www/laabs/src/ext/archivesPubliques/data/conf/configuration.ini
cp /var/www/laabs/src/ext/archivesPubliques/data/conf/confvars.ini.default /var/www/laabs/src/ext/archivesPubliques/data/conf/confvars.ini
cp /var/www/laabs/src/ext/archivesPubliques/data/conf/vhost.conf.default /var/www/laabs/src/ext/archivesPubliques/data/conf/vhost.conf
Une fois les différents fichiers copiés, nous pouvons editer le fichier de configuration ainsi que le menu.
Dans un premier temps, il faut editer le fichier /var/www/laabs/src/ext/archivesPubliques/data/conf/vhost.conf et remplacer les lignes suivantes :
SetEnv LAABS_BUNDLES recordsManagement;filePlan;digitalResource;medona;organization;audit;lifeCycle;archivesPubliques;contact;seda;auth;batchProcessing;seda2
SetEnv LAABS_EXTENSIONS archivesPubliques;thirdPartyArchiving
Par :
SetEnv LAABS_BUNDLES recordsManagement;filePlan;digitalResource;medona;organization;audit;lifeCycle;archivesPubliques;contact;seda;auth;batchProcessing;seda2;archivesCourrier
SetEnv LAABS_EXTENSIONS archivesCourrier;archivesPubliques;thirdPartyArchiving
Ensuite, il faut modifier le menu /var/www/laabs/src/ext/archivesPubliques/data/conf/menu.ini et rajouter les lignes suivantes après "menu = "[" :
{
'label' : 'Registre des courriers',
'href' : '/archivesCourrier/content',
'class' : 'fa fa-search fa-fw'
},
Les instances sont publiées par le serveur http sous la forme d'hôtes virtuels possédant un nom, une configuration spécifique et positionnant les variables d'environnement pour l'exécution.
Créer une configuration d'apache (/etc/apache2/sites-available/maarchRM.conf) pour directement inclure le fichier de configuration de l'hôte virtuel livré :
Include /var/www/laabs/data/maarchRM/conf/vhost.conf
Include /var/www/laabs/src/ext/thirdPartyArchiving/data/conf/vhost.conf
Include /var/www/laabs/src/ext/archivesPubliques/data/conf/vhost.conf
Éditer le fichier de configuration que vous venez d'inclure (vhost.conf) et définiser les valeurs si différent par défaut.
# Chemin vers le répertoire public web de Laabs
DocumentRoot /var/www/laabs/web/
# Nom du vhost (identique au nom associé à l'adresse IP dans le fichier host)
ServerName maarchrm
Se reporter sur la page de configuration pour une description complète des variables pour personnaliser ces valeurs.
Activer la nouvelle configuration
a2ensite maarchRM.conf
Relancer Apache :
service apache2 restart
Cette étape permet de configurer la couche de logique métier et les dépendances techniques nécessaires au fonctionnement de l'application.
La configuration se trouve dans un fichier principal dont le nom est défini pour l'environnement d'exécution :
Les fichiers par défaut se trouvent dans le répertoire de configuration de l'application Maarch RM
cd /var/www/laabs/data/maarchRM/conf
cd /var/www/laabs/src/ext/thirdPartyArchiving/data/conf
cd /var/www/laabs/src/ext/archivesPubliques/data/conf
Éditer le fichier de configuration confvars.ini qui contient les variables propres à l'environnement de données, et définir les valeurs des directives pour la connexion à la base de données et le chemin répertoire d'installation :
@var.dsn = "pgsql:host=localhost;dbname=maarchRM;port=5432"
@var.username = maarch
@var.password = maarch
Le fichier de configuration principal est nommé "configuration.ini". Voir l'article consacré à la configuration configuration pour une description détaillée des directives.
Ajouter dans le fichier hosts du système qui doit accéder à l'application les coordonnées du serveur :
127.0.0.1 maarchrm
Bravo !
L'installation est terminée, et l'application est accessible depuis un navigateur internet.
Avec notre exemple :
http://maarchrm/
L'administrateur fonctionnel est 'superadmin', mot de passe 'superadmin'.
Tous les autres utilisateurs livrés dans les données d'exemple ont pour mot de passe par défaut 'maarch'.
Se reporter aux guides de visite pour le test des grandes fonctionnalités de Maarch RM :