EchoBase
Installation d'EchoBase sur un serveur
Nous préconisons toujours d'utiliser les valeurs par défaut fournies pour une meilleur réactivité de notre part si un problème d'installation survient.
Nous préconisons aussi l'utilisation d'un serveur linux de type debian.
L'installation se déroule en 2 étapes :
- installation de la base de données
- installation de l'application (et des applications dont elle dépend (apache, tomcat, qgis, ...)
Installation de la base de données
Il vous faudra peut-être installer un dépot apt pour postgres (voir https://wiki.postgresql.org/wiki/Apt).
L'application requière l'utilisation de postgresql 9.4 (et postgis 2.5).
apt-get install postgresql-9.4 apt-get install postgresql-9.4-postgis-2.5 apt-get install postgresql-9.4-postgis-2.5-scripts
Ajouter ces Lignes dans le fichier de configuration /etc/postgresql/9.5/main/pg_hba.conf :
host all all 127.0.1.1/32 md5 host all all 134.246.54.0/24 md5 host all all 134.246.55.0/24 md5 host all all 134.246.159.57/24 md5 host all all 134.246.53.148/24 md5 host all all 134.246.54.149/24 md5 host all all 134.246.54.86/24 md5 host all all 134.246.52.51/24 md5
Ajouter une ligne dans le fichier /etc/postgresql/9.5/main/postgresql.conf pour rendre accessible via le 5432:
listen_addresses = '*' # what IP address(es) to listen on;
Consulter la documentation suivante pour créer une base travail.
Installation de l'applicatif
L'application utilise les applicatifs suivants qu'il faut installer et configurer si nécessaire :
- tomcat8
- apache2
- qgis-map-server
- lizmap
Installation tomcat
apt-get install tomcat8
Activez le connecteur AJP tomcat : dans le fichier /etc/tomcat8/server.xml décommentez la ligne
<Connector port="8009" enableLookups="false" redirectPort="8443" protocol="AJP/1.3"/>
Redémarrez le service tomcat
service tomcat8 restart
Installation apache2
apt-get install apache2 libapache2-mod-fcgid a2enmod cgid a2enmod proxy proxy_ajp rewrite service apache2 restart
Création du groupe utilisateur
On crée un groupe utilisateur nommé echobase pour gérer les droits aussi bien au niveau de tomcat que d'apache.
addgroup echobase adduser www-data echobase adduser tomcat8 echobase
Installation Qgis map server
Nous utilisons la version 2.8.4 de Qgis map server.
echo "" >> /etc/apt/sources.list echo "" >> /etc/apt/sources.list echo "#Pour installer qgis-server" >> /etc/apt/sources.list echo "deb http://qgis.org/debian wheezy main" >> /etc/apt/sources.list gpg --keyserver keyserver.ubuntu.com --recv 314DF160 gpg --export --armor 314DF160 | apt-key add - apt-get update apt-get install qgis-mapserver qgis
Le dépot et le nom de la distribution sont à adapter en fonction de votre système (c.f. https://www.qgis.org/fr/site/forusers/alldownloads.html#linux) . Selon la version de Qgis que vous utilisez le nom package peut-être qgis-mapserver ou qgis-server L'url : http://localhost/cgi-bin/qgis_mapserv.fcgi?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetCapabilities doit renvoyer un fichier XML de description des couches disponibles.
Installation Lizmap
Nous utilisons la version 2.9.4 de Lizmap.
apt-get install php5 curl php5-curl php5-sqlite php5-gd mkdir -p /var/www/html cd /var/www/html wget https://github.com/3liz/lizmap-web-client/archive/2.9.4.zip unzip 2.9.4.zip rm 2.9.4.zip ln -s lizmap-web-client-2.9.4 echobase-map cd /var/www/html/echobase-map/lizmap wget https://nexus.nuiton.org/nexus/content/repositories/other-releases/fr/ifremer/echobase/echobase-ui/4.2/echobase-ui-4.2-lizmap.zip unzip -o echobase-ui-4.2-lizmap.zip rm -rf echobase-ui-4.2-lizmap.zip cd /var/www/html/echobase-map chown -R www-data:echobase . chmod g+w -R .
Attention : pour les versions d'Apache avant la 2.4.7 le dossier d'installation de Lizmap doit être /var/www.
Pour tester le server lizmap, allez à l'adresse suivante : http://localhost/echobase-map/lizmap/www
Installation EchoBase
On suppose que tomcat a été installé via le système de paquets, et donc que le répertoire /var/lib/tomcat8 existe.
Toutes les données de l'application seront placées dans le répertoire /var/local/echobase
mkdir /var/local/echobase mkdir -p /var/local/echobase/war cd /var/local/echobase/war wget http://nexus.nuiton.org/nexus/content/repositories/other-releases/fr/ifremer/echobase/echobase-ui/4.2/echobase-ui-4.2-full.war cd /var/local/echobase ln -s war/echobase-ui-4.2-full.war echobase.war cp echobase.war /var/lib/tomcat8/webapps chown -R tomcat8:echobase . chmod g+w -R .
L'application est bien déployée lorsque vous pouvez y accéder à l'adresse suivante :
http://localhost:8080/echobase
Une fois l'application déployée, vous aurez la structure de répertoires suivante :
/var/local/echobase/ |-- data | |-- echobase-log.config | |-- internaldb | | `-- echobase-user.h2.db | |-- lib | | |-- echobase-embedded-4.2.war | | |-- h2-1.3.175.jar | | `-- postgresql-9.4.1211.jar | |-- logs | | `-- echobase.log | |-- import-check-${timestamp} | | |--{filenameWithoutExtension}.processed.csv.gz | | `--{filenameWithoutExtension}.checked.csv.gz | `-- gis | |-- resources | | |-- France&Spain.shp | | |-- pelgas09.shp | | `-- ... | |-- projects | `-- templates | |-- EchoBaseLizmapTemplate.qgs.cfg | |-- EchoBaseQGisTemplate.qgs | `-- ... |-- echobase.war `-- war `-- echobase-ui-4.2-full.war
Nota Bene : Dans le cas où les utilisateurs auraient des problèmes de ressource pour importer des fichiers. Modifier la configuration du tomcat comme ceci :
JAVA_OPTS="-Djava.awt.headless=true -Xmx2048m -XX:+UseConcMarkSweepGC"
Configuration du serveur Apache
Pour la suite de l'installation, exporter le nom de domaine de votre machine
export DOMAIN=emhcalcul
Executer ces commandes (ajout modules apache, création du site echobase)
cat << EOF > /etc/apache2/sites-available/echobase.conf <VirtualHost *:80> ServerName echobase.$DOMAIN ProxyRequests Off ProxyPass / ajp://localhost:8009/ ProxyPassReverse / ajp://localhost:8009/ <Proxy *> Order deny,allow Allow from all </Proxy> LogLevel warn ErrorLog /var/log/apache2/echobase-error.log CustomLog /var/log/apache2/echobase-access.log combined </VirtualHost> <VirtualHost *:80> ServerName echobase-map.$DOMAIN ProxyRequests Off RewriteEngine On RewriteRule ^/$ http://echobase-map.$DOMAIN/echobase-map/lizmap/wwww [R] DocumentRoot /var/www/html LogLevel warn ErrorLog /var/log/apache2/echobase-map-error.log CustomLog /var/log/apache2/echobase-map-access.log combined </VirtualHost> EOF a2ensite echobase.conf service apache2 restart
Ajouter les deux nouveaux sous-domaines dans le fichier /etc/hosts
127.0.0.1 echobase.acoustica echobase-map.acoustica
Configuration LizMap dans EchoBase
On doit indiquer à EchoBase l'adresse qui génère les cartes
echo "" >> /etc/echobase.properties echo "" >> /etc/echobase.properties echo "echobase.lizmap.application.map.url=http://echobase-map.$DOMAIN/echobase-map/lizmap/www/index.php/view/map" >> /etc/echobase.properties service tomcat8 restart
Conclusion
- L'application EchoBase est accessible à l'adresse http://echobase.acoustica/echobase
- Le site de cartographie est accessible à l'adresse http://echobase-map.acoustica/echobase-map/lizmap/www/index.php