Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Installation.

Obtenir NumaHOP

On peut obtenir NumaHOP par trois méthodes:

  • Depuis les pages de publication de version. (conseillé)
  • Compiler depuis le code source.
  • Dockerised solution. See the Docker Usage chapter.

Compiler depuis le code source

Programmes nécessaires

  • git
  • une distribution de la jdk (java developpement kit) version 17.
  • just (optionnel)
  • maven > 3.6.0 (optionnel)

Before the installation process, clone the git repository and cd into it:

git clone https://github.com/NumaHOP/NumaHOP.git numahop && cd numahop

If you don’t have maven installed you can run this command:

chmod +x mvnw

And use ./mvnw instead of mvn.

Then you can run the compilation command for numahop:

mvn package 

# Or using the just file
just d

Si vous rencontrez des erreurs pendant la compilation lancez mvn -Dfast=true package. Cela desactive toute les execution non necessaires pour la compilation comme les tests, l’analyse du code ou la vérification du formatage du code. Une fois que la compilation est faite un fichier numahop-yy.mm.jar devrait être présent dans le dossier target. Pour l’installation deplacez ce fichier vers /opt/pgcn/numahop.jar. C’est le chemin d’installation par default de NumaHOP.

Dépendances à l’exécution

Now use your package manager to install the necessary runtime dependencies for numahop:

  • mariadb > 10.*
  • elasticsearch > 8.*
  • open-jdk-17
  • tesseract-ocr-all
  • libimage-exiftool-perl
  • imagemagick
  • libyaz4j (optionnel)

The libyaz4j dependency is only used by the Z39.50 search queries. If you don’t need the Z39.50 queries you can skip this dependency.

Base de données

Maintenant nous allons créer une base de données vide pour NumaHOP. NumaHOP crée les tables automatiquement donc vous n’avez pas besoin de les créer vous même. Voir la page sur liquibase pour plus d’informations.

mariadb

Lancez ces commandes en remplaçant les bouts de texte a substituer <db-name>, <db-user-name> et <db-user-pwd>. Notez ceux-ci vous allez en avoir besoin plus tard.

MariaDB [(none)]>

La commande pour créer la base:

CREATE DATABASE <db-name>;

Puis créez l’utilisateur que NumaHOP utilisera pour se connecter a la base de données.

CREATE USER '<db-user-name>'@localhost IDENTIFIED BY <db-user-pwd>;
GRANT CREATE, ALTER, DROP, INSERT, SELECT, UPDATE, INDEX, DELETE ON '<db-name>'.* TO '<db-user-name>'@localhost;
FLUSH PRIVILEGES;

Remarque: Les droits donnés a l’utilisateur sont les droits minimaux pour que NumaHOP puisse éditer la base de données.

Vous pouvez vérifier que tous est bon en lançant les commandes SHOW DATABASES; et SHOW GRANTS FOR '<db-user-name>'@localhost.

Installez Elastic Search en suivant leur documentation (lien. Et assurez vous que l’instance Elastic Search soit accessible par localhost ou une URL.

A faire: Recommander une configuration pour l’utiliser avec NumaHOP.

Le serveur mail (optionnel mais important)

NumaHOP n’as pas besoin du serveur de mail pour tourner cependant certaines fonctionnalités comme le changement de mot de passe ne seront pas fonctionnelles.

Configuration de NumaHOP

A présent nous pouvons configurer NumaHOP en suivant le guide de configuration. Après cette étape vous devriez avoir une instance NumaHOP fonctionnelle.

Si vous voulez gérer le processus de NumaHOP avec systemd

Creez le fichier /etc/systemd/system/numahop.service:

[Unit]
Description=NumaHOP
After=syslog.target

[Service]
ExecStart=/opt/pgcn/numahop.jar --spring.profiles.active=prod # for activating certain spring profiles see the config chapter for more information.
SuccessExitStatus=143
StandardOutput=null
User=numahop 

[Install]
WantedBy=multi-user.target

Puis lancez les commandes (selon vos droits utilisateur elle peuvent demander d’être lancer avec l’utilisateur root):

systemctl daemon-reload # After adding/modifying the file
systemctl start numahop # For starting numahop
systemctl stop numahop # For stoping numahop

Si vous n’avez pas les droits vous pouvez creez le fichier ~/.config/systemd/user/numahop.service contenant:

[Unit]
Description=NumaHOP
After=syslog.target

[Service]
ExecStart=/opt/pgcn/numahop.jar --spring.profiles.active=prod
SuccessExitStatus=143
StandardOutput=null

[Install]
WantedBy=multi-user.target

Et utiliser les commandes:

systemctl --user daemon-reload # After adding/modifying the file
systemctl --user start numahop # For starting numahop
systemctl --user stop numahop # For stoping numahop

Si tous a fonctionne correctement vous pouvez acceder a l’interface graphique en vous connectant au serveur. Vous pouvez vous diriger vers le guide de post installation.