serveurs:installation:web-srv:geonature-app

Installer et configurer GeoNature App

  • Si vous avez installer Nvm manuellement, installer la version de Node et Npm nécessaire à GeoNature :
    • Se placer dans le dossier frontend/ : cd frontend/
    • Installer Node et Npm à l'aide du fichier .nvmrc présent dans ce dossier : nvm install
  • Installer le backend de GeoNature :
    • Se placer dans le dossier install/ de GeoNature : cd /home/geonat/www/geonature/install/
    • Lancer l'installation du backend : ./01_install_backend.sh 2>&1 | tee ./$(date +"%Y-%m-%d")_install_app.log
  • Préalable à la configuration de l'application :
    • Générer un uuid avec la commande : uuid
    • Définir un nouveau mot de passe pour l'utilisateur de GeoNature admin (à mettre à jour avec UsersHub une fois installé)
  • Configurer l'application :
    • Créer le fichier si nécessaire (normalement il est créé par le script d'install) : cp config/geonature_config.toml.sample config/geonature_config.toml
    • Éditer le fichier de config de l'appli : vi config/geonature_config.toml
    • Contenu :
      URL_APPLICATION = 'https://expert.<domaine-sinp>' 
      API_ENDPOINT = 'https://expert.<domaine-sinp>/api'
      API_TAXHUB = 'https://taxhub.<domaine-sinp>/api'
      SECRET_KEY = '<uuid>' # Mettre un uuid généré avec la commande 'uuid' dans une Console
      MAIL_ON_ERROR = true
       
      # Configuration de l'envoie d'emails
      [MAIL_CONFIG]
          MAIL_SERVER = 'smtp-relay.gmail.com'# À remplacer par le serveur SMTP d'OVH ssl0.ovh.net
          MAIL_PORT = 587
          MAIL_USE_TLS = true
          MAIL_USE_SSL = false
          MAIL_USERNAME = 'mailer@cbn-alpin.fr'# À remplacer par un compte sur silene.eu
          MAIL_PASSWORD = '<mot-de-passe>'
          MAIL_DEFAULT_SENDER = 'contact@<domaine-sinp>'
          MAIL_ASCII_ATTACHMENTS = false
       
      # Configuration de l'accès distant à UsersHub (API)
      [USERSHUB]
          URL_USERSHUB = 'https://usershub.<domaine-sinp>' # sans slash final
          # Administrateur de mon application
          ADMIN_APPLICATION_LOGIN = "admin"
          ADMIN_APPLICATION_PASSWORD = "<mot-de-passe-admin>"
       
      # Gestion des demandes d'inscription
      [ACCOUNT_MANAGEMENT]
          ENABLE_SIGN_UP = true
          AUTO_ACCOUNT_CREATION = false
          VALIDATOR_EMAIL = 'contact@<domaine-sinp>'
          AUTO_DATASET_CREATION = false
          ENABLE_USER_MANAGEMENT = true
       
      # Gestion du formulaire de demande d'inscription
      [[ACCOUNT_MANAGEMENT.ACCOUNT_FORM]]
          type_widget = "checkbox"
          attribut_label = "<a target='_blank' href='http://docs.geonature.fr'>J'ai lu et j'accepte la charte</a>"
          attribut_name = "validate_charte"
          values = [true]
          required = true
       
      [[ACCOUNT_MANAGEMENT.ACCOUNT_FORM]]
          type_widget = "select"
          attribut_label = "Exemple select"
          attribut_name = "select_test"
          values = ["valeur1", "valeur2"]
          required = false
       
      [FRONTEND]
          DISPLAY_MAP_LAST_OBS = true
       
      [MAPCONFIG]
          CENTER = [43.96387, 6.06216]
          ZOOM_LEVEL = 8
          ZOOM_LEVEL_RELEVE = 15
          ZOOM_ON_CLICK = 16
          BASEMAP = [
              {"name" = "OpenStreetMap", "layer" = "//{s}.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png", "attribution" = "&copy; OpenStreetMap", "maxZoom" = 22, "maxNativeZoom" = 19},
              {"name" = "OpenTopoMap", "layer" = "//a.tile.opentopomap.org/{z}/{x}/{y}.png", "attribution" = "&copy; OpenTopoMap", "maxZoom" = 22, "maxNativeZoom" = 17},
              {"name" = "GoogleSatellite", "layer" = "//{s}.google.com/vt/lyrs=s&x={x}&y={y}&z={z}", "subdomains" = ["mt0", "mt1", "mt2", "mt3"], "attribution" = "&copy; GoogleMap", "maxZoom" = 22, "maxNativeZoom" = 21},
              {"name" = "IGN Plan v2", "layer" = "https://wxs.ign.fr/cartes/geoportail/wmts?&REQUEST=GetTile&SERVICE=WMTS&VERSION=1.0.0&STYLE=normal&TILEMATRIXSET=PM&FORMAT=image/png&LAYER=GEOGRAPHICALGRIDSYSTEMS.PLANIGNV2&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}", "attribution" = "&copy; IGN", "maxZoom" = 22, "maxNativeZoom" = 19},
              {"name" = "IGN Ortho", "layer" = "https://wxs.ign.fr/ortho/geoportail/wmts?&REQUEST=GetTile&SERVICE=WMTS&VERSION=1.0.0&STYLE=normal&TILEMATRIXSET=PM&FORMAT=image/jpeg&LAYER=ORTHOIMAGERY.ORTHOPHOTOS&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}", "attribution" = "&copy; IGN", "maxZoom" = 22, "maxNativeZoom" = 19},
              {"name" = "IGN Cadastre", "layer" = "https://wxs.ign.fr/parcellaire/geoportail/wmts?&REQUEST=GetTile&SERVICE=WMTS&VERSION=1.0.0&STYLE=normal&TILEMATRIXSET=PM&FORMAT=image/png&LAYER=CADASTRALPARCELS.PARCELS&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}", "attribution" = "&copy; IGN", "maxZoom" = 22, "maxNativeZoom" = 19},
              {"name" = "IGN SCAN 25&reg;", "layer" = "https://wxs.ign.fr/<clef-ign>/geoportail/wmts?LAYER=GEOGRAPHICALGRIDSYSTEMS.MAPS&EXCEPTIONS=text/xml&FORMAT=image/jpeg&SERVICE=WMTS&VERSION=1.0.0&REQUEST=GetTile&STYLE=normal&TILEMATRIXSET=PM&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}", "attribution" = "&copy; IGN-F/Geoportail", "maxZoom" = 22, "maxNativeZoom" = 18}
          ]
       
      [SYNTHESE]
          NB_MAX_OBS_MAP = 100000
          NB_MAX_OBS_EXPORT = 100000
          NB_LAST_OBS = 10000
          LIST_COLUMNS_FRONTEND = [
              { prop = "lb_nom", name = "Taxon" },
              { prop = "date_min", name = "Date début" },
              { prop = "observers", name = "Observateurs" },
              { prop = "dataset_name", name = "Jeu de données" }
  • Configuration de l'envoie d'email avec un compte Gmail. Il est nécessaire de:
  • Tester l'envoie d'email en essayant de s'inscrire depuis la page d'accueil de GeoNature
    • En cas de problème, les logs sont accessibles dans : tail -f /var/log/geonature.log
  • Emplacement des fichiers de config :
    • Le fichier config/settings.ini sert seulement aux scripts d'installation.
    • Une fois GeoNature installé, il faut modifié la config dans config/geonature_config.toml
  • Prise en compte des mises à jour de la config :
    • Se rendre dans le dossier backend : cd ~/www/geonature/backend
    • Activer l'env virtuel : source venv/bin/activate
    • Lancer la commande de mise à jour de la conf de GeoNature : geonature update_configuration
    • Désactiver l'env virtuel : deactivate
  • Se connecter à la base de donnée avec DBeaver et accéder à la table gn_commons.t_modules
    • Modifier le nom d'un menu de module en modifiant le champ module_label
    • Modifier l'icône en sélectionnant une nouvelle parmi les icônes Font Awesome puis indiquer son nom dans le champ module_picto
  • serveurs/installation/web-srv/geonature-app.txt
  • Dernière modification : 2023/11/12 21:41
  • de jpmilcent