INSTALLATION
Cette documentation décrit l’installation indépendante (standalone) de TaxHub. Si vous utilisez GeoNature, TaxHub y est intégré et il n’est alors pas nécessaire d’installer TaxHub indépendamment.
Prérequis
Pour installer TaxHub, il vous faut un serveur avec Debian 11 ou 12. L’utilisation de TaxHub avec une autre distribution est théoriquement possible, mais n’est pas officiellement supporté.
Création d’un utilisateur
Vous devez disposer d’un utilisateur Linux pour faire tourner TaxHub
(nommé synthese
dans notre exemple). L’utilisateur doit appartenir aux
groupes sudo
et www-data
. Le répertoire de cet utilisateur
synthese
doit être dans /home/synthese
. Si vous souhaitez utiliser
un autre utilisateur Linux, vous devrez adapter les lignes de commande
proposées dans cette documentation.
adduser --home /home/synthese synthese
adduser synthese sudo
adduser synthese www-data
NOTE: Pour la suite de l’installation, veuillez utiliser l’utilisateur Linux créé précedemment (
synthese
dans l’exemple), et non l’utilisateurroot
.
Installation des dépendances requises
Installez les dépendances suivantes :
sudo apt install -y apache2 python3-pip python3-venv libpq-dev libgdal-dev sudo unzip
sudo apt install -y postgresql postgresql-postgis
Configuration de PostgreSQL
Créer un utilisateur PostgreSQL :
sudo -u postgres createuser geonatadmin --pwpromt
Récupération du code source de TaxHub
Récupérer le zip de l’application sur le Github du projet
(X.Y.Z à remplacer par le numéro de version
souhaité), dézippez le dans
le répertoire /home/synthese
:
cd /home/synthese
wget https://github.com/PnX-SI/TaxHub/archive/X.Y.Z.zip
unzip X.Y.Z.zip
mv TaxHub-X.Y.Z taxhub
rm X.Y.Z.zip
cd taxhub
Configuration de l’installation
Créer et mettre à jour le fichier settings.ini
:
cp settings.ini.sample settings.ini
nano settings.ini
ATTENTION : Les valeurs renseignées dans ce fichier sont utilisées par
le script d’installation de la base de données install_db.sh
et par
le script install_app.sh
.
Renseignez les informations nécessaires à la connexion à la base de données PostgreSQL. Il est possible de laisser la plupart des valeurs proposées par défaut, mais lisez au moins le fichier de bout en bout pour savoir ce qu’il est possible de changer.
La valeur la plus importante à mettre à jour est user_pg_pass=monpassachanger
(monpassachanger
doit être remplacé par celui choisi lors de l’étape
de configuration de PostgreSQL).
Stockage des médias
Les médias associés aux taxons peuvent être stockés sur le serveur
(paramètre MEDIA_FOLDER
).
Il est possible d’utiliser le service de stockage S3 AWS en le « montant » dans le système de fichier en utilisant notamment le paquet s3fs.
Installation de l’application
Lancez le fichier d’installation et de configuration de l’application
./install_app.sh
Création de la base de données
Lancer le fichier d’installation et de préparation de la base de données :
cd ~/taxhub
./install_db.sh
Le script va ouvrir une nouvelle fois le fichier de configuration
settings.ini
avec nano, pour vous donner une opportunité de revoir une
dernière fois ses paramètres. Vous pouvez sauvegarder le fichier tel
quel pour continuer (ctrl + x).
Configuration de l’application
La configuration de l’application est réalisée dans le fichier
config/taxhub_config.toml
(créé automatiquement lors de l’installation de TaxHub)La liste de tous paramètres et de leurs valeurs par défaut est disponible dans
config/taxhub_config.toml.default
Si vous modifiez le fichier de configuration de TaxHub (
config/taxhub_config.toml
), vous devez redémarrer l’application avec la commandesudo systemctl restart taxhub
Arrêter/Lancer l’application
Pour arrêter TaxHub
sudo systemctl stop taxhub
Pour démarrer TaxHub
sudo supervisorctl start taxhub
Configuration Apache
Voici une des manières de configurer Apache. Elle se base sur le fait
que la configuration /etc/apache2/sites-available/000-default.conf
existe par défaut et va automatiquement charger notre nouvelle entrée.
Le script d’installation de TaxHub crée automatiquement le ficher
/etc/apache2/conf-available/taxhub.conf
(à partir du fichier taxhub_apache.conf
) et l’active
(a2enconf taxhub
). Ce fichier vous permet d’accéder à TaxHub via l’URL
http://ADRESSE_DU_SERVEUR/taxhub/.
Mise à jour de l’application
Les différentes versions de TaxHub sont disponibles sur le Github du projet (https://github.com/PnX-SI/TaxHub/releases)
Lire attentivement les notes de chaque version si il y a des spécificités (https://github.com/PnX-SI/TaxHub/releases). Suivre ces instructions avant de continuer la mise à jour.
Télécharger et extraire la version souhaitée dans un répertoire séparé (où
X.Y.Z
est à remplacer par le numéro de la version que vous installez) :cd wget https://github.com/PnX-SI/TaxHub/archive/X.Y.Z.zip unzip X.Y.Z.zip mv taxhub taxhub_old mv TaxHub-X.Y.Z/ taxhub rm X.Y.Z.zip
Récupérer les anciens fichiers de configuration :
cp taxhub_old/settings.ini taxhub/settings.ini cp taxhub_old/config/taxhub_config.toml taxhub_old/config/taxhub_config.toml
Récupérer les médias uploadés dans la précédente version de TaxHub (avant la version 2.0) :
cp -aR taxhub_old/static/medias/ taxhub/static/
Récupérer les médias uploadés dans la précédente version de TaxHub (après la version 2.0) :
cp -aR taxhub_old/media taxhub
Lancer l’installation de l’application et de ses dépendances :
cd taxhub ./install_app.sh
Mettre à jour le schéma de base de données en activant l’environnement virtuel :
cd taxhub source venv/bin/activate flask db autoupgrade deactivate
Une fois que l’installation est terminée et fonctionnelle, vous pouvez supprimer la version précédente de TaxHub (répertoire
taxhub_old
).
Développement
Pour lancer l’application en mode debug :
cd ~/taxhub
source venv/bin/activate
flask run
TaxHub est alors accessible à l’adresse : http://localhost:5000
(sans
/taxhub
).