Installation du socle d'archivage de Maarch RM

Cette procédure va vous guider pas à pas dans l'installation du socle d'archivage de Maarch RM.

Attention : Cette documentation permet uniquement l'installation du socle d'archivage. Pour toute installation d'une ou plusieurs extensions, merci de vous référer à leurs documentations d'installation et configuration dont les liens sont présents à la fin de cette documentation.

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.

Prérequis

Serveur applicatif

Pour connaître les prérequis du serveur applicatif devant héberger l'application maarchRM, veuillez vous référer à la page corespondante : Prérequis Application

Si votre serveur ne possède pas d'interface graphique, il vous faudra créer un script pour l'éxecution du programme "wkhtmltopdf" (nécessaire pour l'affichage des attestations de dépôt par exemple).

Voici les commandes à effectuer afin de pouvoir faire exécuter wkhtmltopdf via xvfb, le serveur graphique virtuel (veuillez vous assurer que les paquets wkhtmltopdf et xvfb soient bien installés sur votre serveur) :

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

Utilisateur système pour l'application

Sur le serveur, créez 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).
Modifiez le fichier avec la valeur :

export APACHE_RUN_USER=maarch

Il est possible de tester la configuration du serveur Apache avec la commande suivante :

apachectl configtest

Serveur base de données

Serveur PostgreSQL 9.4 ou supérieur

apt-get install postgresql

Serveur de fichiers

  • Espace disque à définir selon la volumétrie des archives

Client

  • Navigateur internet HTML5 / CSS3

Récupération des sources

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érez les sources de l'application et ajoutez-les au répertoire "laabs".

Le dossier "laabs" se crée automatiquement.

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

Création des espaces de stockage

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

Changement des droits

À partir de la zone web (/var/www), remettre si nécessaire les droits et autorisation sur l'ensemble de la zone à l'utilisateur maarch :

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

Administration de PostgreSQL

Création d'un utilisateur

Se connecter en tant qu'utilisateur postgres (depuis l'utilisateur administrateur, aucun mot de passe n'est nécessaire) :

su postgres

Et exécutez la commande suivante :

psql

CREATE USER maarch;  
ALTER ROLE maarch WITH CREATEDB;  
ALTER ROLE maarch WITH SUPERUSER;
ALTER USER maarch WITH ENCRYPTED PASSWORD 'maarch';  
\q  
exit  

Nous venons de créer un utilisateur postgres 'maarch' avec le mot de passe 'maarch' qui est administrateur et à les droits de créer de nouvelles bases de données.


Installation du socle d'archivage seul

À partir d'ici, cette documentation permet d'installer le socle d'archivage uniquement, sans extensions. Si vous souhaitez installer une extension particulière (hors Archives Mutualisées), veuillez vous référer à sa documentation d'installation en fin de page


Création de la base données du socle d'archivage

Créez une nouvelle base de données pour l'instance du socle d'archivage

su postgres

psql

CREATE DATABASE "maarchRM" WITH OWNER maarch;
\q

exit

Ici la base de données s'appele donc "maarchRM" et l'utilisateur 'maarch' est administrateur de celle-ci.

Structure et données

Ces scripts permettent de créer, dans l'ordre, la structure (les tables et relations) de la base de données puis de les remplir avec les données minimales pour le bon fonctionnement de l'application.

cd /var/www/laabs/data/maarchRM/batch/pgsql

Rendez les scripts executables :

chmod +x *.sh

Création des tables de la base de données :

./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 qui créera un jeu de données correspondant au guide de visite (conseillé pour une première expérience avec Maarch RM) :

./data.sh -u=maarch -p=5432 -d="maarchRM" -h=127.0.0.1  

ou ce script qui créera uniquement les données minimales permettant le bon fonctionnement de l'application en production :

./data.min.sh -u=maarch -p=5432 -d="maarchRM" -h=127.0.0.1  

NB : Les paramètres des scripts sont les suivants :

  • -u : L'utilisateur étant administrateur de la base de données (maarch par défaut)
  • -p : Le port de connexion au serveur de base de données (5432 par défaut)
  • -d : Le nom de la base de données entre guillemets ("maarchRM" par défaut)
  • -h : L'adresse ip du serveur de la base de données (127.0.0.1 par défaut)

Configuration

Préparation de fichiers de configuration

Copiez les modèles de configuration suivants et enlevez leurs extensions .default pour que l'application puisse y accéder.

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  

Apache

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 Apache pour directement inclure le fichier de configuration de l'hôte virtuel livré :

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

Éditez le fichier de configuration que vous venez d'inclure (/var/www/laabs/data/maarchRM/conf/vhost.conf) et modifiez les valeurs si elles sont différentes de celles 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

Configuration des Archives Mutualisées

Pour pouvoir utiliser pleinement les fonctionnalités du mode transactionnel, il faut modifier le fichier de configuration.ini présent par défaut ici : /var/www/laabs/data/maarchRM/conf/configuration.ini

Activer le mode transactionnel :

À la section [medona], passer la directive transaction à 'true'

Certaines sections comportent des parties à commenter ou décommenter selon la configuration souhaitée, d'autres indications complémentaires sont présentes directement dans le fichier de configuration.

Sections à décommenter :

  1. blacklistUserStories
  2. servicePrivileges
  3. orgUnitRoles
  4. tasks

Pour chacune des sections, il existe deux différentes définitions des directives, il ne vous reste qu'à commenter la partie non utilisée et décommenter les directives désirées. Exemple pour orgUnitRoles :

[organization]
; Roles of organization unit
; if 'transaction' parameter disable, uncomment the block 'orgUnitRoles' below
; if 'transaction' parameter enable, comment the block 'orgUnitRoles' below
orgUnitRoles = "{
        'owner' : {
        'code' : 'owner',
        'description' : 'The system owner'
        }
}"

; Roles of organization unit
; if 'transaction' parameter disable, comment the block 'orgUnitRoles' below
; if 'transaction' parameter enable, uncomment the block 'orgUnitRoles' below
;orgUnitRoles = "{
;    'owner' : {
;    'code' : 'owner',
;    'description' : 'The system owner'
;   },
;    'archiver' : {
;    'code' : 'archiver',
;    'description' : 'Archival agency'
;   },
;    'controlAuthority' : {
;    'code' : 'controlAuthority',
;    'description' : 'Archive control authority'
;   },
;    'depositor' : {
;    'code' : 'depositor',
;    'description' : 'Archive depositor agency'
;   },
;    'originator' : {
;    'code' : 'originator',
;    'description' : 'Archive originating agency'
;   }
;}"

Se reporter à la page de configuration pour une description complète des variables et personnaliser ces valeurs si besoin.

Activation du nouveau VirtualHost

a2ensite maarchRM

Relancez Apache :

service apache2 restart

Base de données

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 :

  • dans la configuration du ou des hôtes virtuels http pour la publication par le serveur internet (IHM et service)
  • dans chaque script pour les exécutions en mode ligne de commande (batch, sh) Le fichier principal nommé est livré avec des inclusions d'autres fichiers de configuration pour les variables propres à l'environnement et pour chaque dépendance technique.

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

Éditez le fichier de configuration confvars.ini se situant dans /var/www/laabs/data/maarchRM/conf contenant les variables d'accès à la base de données PSQL, et remplacez les par vos valeurs.

@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.

Connexion à l'application

Fichier hosts

Ajoutez dans le fichier hosts du système qui doit accéder à l'application les coordonnées du serveur :

  • Sous Linux: /etc/hosts
  • Sous Windows : C:\windows\system32\drivers\etc\hosts

    127.0.0.1 maarchrm

Bravo !

L'installation est terminée, et l'application est maintenant 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'.

Rappel : Cette documentation permet uniquement l'installation du socle d'archivage. Pour toute installation d'une ou plusieurs extensions, merci de vous référer à la documentation d'installation de celles ci :

Se reporter aux guides de visite pour prendre connaissance des grandes fonctionnalités de Maarch RM

results matching ""

    No results matching ""