Annexes
Annexe 1 : Installation de la machine virtuelle
Le TP se déroule sur une machine virtuelle sur laquelle les étapes suivantes ont été exécutées :
- Installer debian 9.5 (Stretch)
-
Installer sudo et passer le login sist en sudoer
[login_root] apt install sudo [login_root] usermod -aG sudo sist
-
Mettre à jour le système et installer divers outils
sudo apt-get upgrade sudo apt-get install vim
-
Installer les Guest Additions de Virtualbox :
sudo apt update sudo apt install build-essential module-assistant dkms sudo m-a prepare sudo mount /media/cdrom sudo cd /media/cdrom sudo bash VBoxLinuxAdditions.run sudo reboot
-
Installer apache (2.4.25)
sudo apt-get install apache2
-
Installer tomcat 8 :
sudo apt-get install tomcat8 tomcat8-admin
-
Editer le fichier /etc/tomcat8/tomcat-users.xml
sudo nano /etc/tomcat8/tomcat-users.xml
et ajouter juste après la balise <tomcat-users>
:
<role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<user username="admin" password="anfsist" roles="admin-gui,manager-gui" />
-
Redémarrer tomcat :
sudo service tomcat8 restart
-
Installer postgresql (9.6) :
sudo apt-get install postgresql
-
Installer postgis (2.3) :
sudo apt-get install postgis
-
L'ensemble des ressources requises pour le TP sont placées dans le répertoire /anfsist de la machine virtuelle. Pour les copier sur la machine virtuelle nous avons monté un répertoire partagé en la machine hôte et la machine virtuelle : aller dans Réseau > Dossiers Partagés > "+", Chemin du dossier : vers le répertoire de ressources sur la machine hôte (
[...]/ANFSIST18_geoserver_res/anfsist
), Nom du dossier = anfsist, cocher Lecture seule et Montage automatique (et Configuration permanente si l'option existe). Le répertoire sera automatiquement monté dans /media/sf_anfsist. Pour pouvoir y accéder les utilisateurs sist, www-data, postgres et tomcat8 doit être dans le groupe vboxsf :sudo usermod -a -G vboxsf sist sudo usermod -a -G vboxsf tomcat8 sudo usermod -a -G vboxsf www-data sudo usermod -a -G vboxsf postgres sudo service tomcat8 restart sudo service apache2 restart sudo reboot sudo mkdir /anfsist sudo cp -a /media/sf_anfsist/* /anfsist/
-
Créer la base de données du TP
sudo sh -c 'cat <<EOF>> /etc/postgresql/9.6/main/pg_ident.conf geoserver sist geoserver geoserver root geoserver EOF' sudo sh -c 'cat <<EOF>> /etc/postgresql/9.6/main/pg_hba.conf local anfsist geoserver ident map=geoserver EOF' sudo service postgresql restart su - [root login] su postgres [postgres login] psql < /anfsist/init/anfsist.sql [postgres login] psql -d anfsist < /anfsist/init/anfsist_data.sql
-
Installer QGIS :
sudo apt-get install qgis
-
Ajouter le plugin OpenLayers dans QGIS
- Lancer Qgis dans la machie virtuelle
- aller dans Plugins > Manage and Install Plugin..., chercher OpenLayers Plugin et l'installer.
-
Un lien est établi vers les fichiers html contenant des clients openlayers (utiles en fin de TP) :
sudo ln -s /anfsist/www /var/www/html/tp_geoserver
-
Par confort d'utilisation, nous permettons l'accès à la machine virtuelle depuis la machine hôte pour la connexion ssh et pour l'accès aux services web. Pour cela, aller dans Réseau > Avancé > Redirection de ports et ajouter :
Nom | Protocole | Ip hôte | Port hôte | Ip invité | Port invité |
---|---|---|---|---|---|
tomcat | TCP | 8080 | 8080 | ||
http | TCP | 10080 | 80 | ||
ssh | TCP | 10022 | 22 |
Note
Dans certains cas rares, le port 8080 de la machine hôte est déjà utilisé, la redirection de port pour tomcat ne peut alors pas fonctionner. Cela veut probablement dire que vous avez déjà installé tomcat sur votre machine ou bien que vous avez installé une application qui embarque un serveur tomcat. Si tel est le cas, il vous faudra soit arrêter le serveur tomcat ou l'application en question, soit effectuer une autre redirection de port.
Annexe 2 : Configuration de Tomcat
La machine virtuelle est également fournie avec un serveur d'applications tomcat préconfiguré.
Sous Debian l'installation de tomcat produit des fichiers dans /etc/tomcat8/ et /var/lib/, tandis que l'interface d'administration qui vient avec le package tomcat8-admin est installée dans /usr/share/tomcat8-admin.
Avant d'installer Geoserver via tomcat il est nécessaire de configurer les paramètres d'exécution de tomcat de manière à pouvoir déployer et exécuter l'archive web Geoserver. Tomcat étant une application Java il convient de modifier les paramètres d'exécution par défaut qui sont fixés relativement bas.
-
Créer le répertoire bin dans le répertoire /var/lib/tomcat8 :
sudo mkdir /var/lib/tomcat8/bin
-
Créer le fichier /var/lib/tomcat8/bin/setenv.sh avec le contenu suivant :
sudo sh -c 'cat <<EOF> /var/lib/tomcat8/bin/setenv.sh CATALINA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms256M -Xmx2048M -XX:MaxPermSize=256m -XX:SoftRefLRUPolicyMSPerMB=36000" EOF'
-
L'interface d'administration permet d'installer des applications en téléversant des archives web. Malheureusement la taille maximum des fichiers que l'on peut téléverser est par défaut trop basse (50 Mo). Nous pouvons l'augmenter en éditant le fichier /usr/share/tomcat8-admin/manager/WEB-INF/web.xml :
-
Remplacer :
<multipart-config> <!-- 50MB max --> <max-file-size>52428800</max-file-size> <max-request-size>52428800</max-request-size> <file-size-threshold>0</file-size-threshold> </multipart-config>
-
par :
<multipart-config> <!-- 200MB max --> <max-file-size>209715200</max-file-size> <max-request-size>209715200</max-request-size> <file-size-threshold>0</file-size-threshold> </multipart-config>
-
-
Redémarrer tomcat
sudo service tomcat8 restart