Installation - airpaca/CIGALE GitHub Wiki
Prérequis serveur
- Serveur web (apache ou nginx)
- php (5 ou 7)
- Serveur cartographique (Geoserver)
- Serveur PostgreSQL avec PostGIS
- FastCGI
Prérequis base de données
Utiliser le script sql/prod2dev.sh pour exporter les données depuis la base inventaire vers le serveur de bases de données hébergeant l'application. Bien penser à configurer les variables.
Téléchargement du code
Cloner ou télécharger le répertoire CIGALE sur le serveur.
Création des fichiers de configuration
Pour faire fonctionner l'application, il est nécessaire de créer les fichiers de configuration suivants à la racine du dossier CIGALE et de les configurer en remplaçant les valeurs entre crochets:
config.js
// Configuration file for sensitive params only.
// All paths must contain the trailing "/".
// All params names must start with cfg_*
// Geoserver Host
cfg_host = "http://[myhost]/geoserver"; // Geoserver host without trailing /
// Inventaire
cfg_vinv = "[...]"; // Version d'inventaire
cfg_anmax = "[...]"; // Année max de l'inventaire émissions et consommations
cfg_anmax_prod = "[...]"; // Année max de l'inventaire productions
cfg_ans_film = [[...], [...], ...]; // Année du film de l'inventaire sans les années non calculées
config.php
<?php
$pg_host = "[...]"; // host bdd pgsql
$pg_bdd = "[...]"; // database bdd pgsql
$pg_lgn = "[...]"; // login bdd pgsql
$pg_pwd = "[...]"; // pwd bdd pgsql
$v_inv = "[...]"; // Version d'inventaire
?>
config.sh
#!/bin/bash
# Geoserver access config
gs_url="http://[...]/geoserver" # Geoserver Host url
gs_usr="[...]" # Geoserver user
gs_pwd="[...]" # Geoserver Password
# Database access config
ds_host="[...]" # Database host ip
ds_port="[...]" # Database host port
ds_database="[...]" # Database name
ds_usr="[...]" # Database user
ds_pwd="[...]" # Database pwd
Publication des couches sous Geoserver
Le script geoserver/pub_cigale2geoserver.sh permet de publier les tables nécessaires depuis la bdd PostgreSQL vers Geoserver avec les bons noms de workspace, datastore et couches. Ces noms sont ensuite utilisés en dur dans le code de l'appli.
Configuration du serveur web
Configurer le site pour le rendre accessible.
Exemple avec le fichier conf de nginx:
[...]
# -- CIGALE
location /cigale {
alias /path/to/app/CIGALE;
index index.php;
# Si login nécessaire
# auth_basic "Login";
# auth_basic_user_file /opt/nginx/.htpasswd;
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
include fastcgi_params;
}
}
[...]