S'abonner au Flux RSS

jeudi, décembre 15 2011

Déployer Geoserver 2.1.2 avec Tomcat7 sur Debian Squeeze

Le but de ce mini tutoriel est de mettre en oeuvre la dernière version stable de GeoServer sur une Debian/Squeeze avec Tomcat7. C'est aussi une façon pour moi de conserver la méthode, car n'étant pas de culture javaiste c'est toujours difficile de se replonger dans la logique Tomcat et ses multiples emplacements de fichiers de conf.

Tomcat7 n'étant pas disponible dans Squeeze (il l'est dans wheezy) nous allons utiliser un backport disponible sur mon dépôt non-officiel, voir ce billet pour la mise en oeuvre du dépôt. Une fois le dépôt configuré et apt-get udpate effectué comme il se doit on va installer les 2 paquets suivants ; tomcat7 pour la base et tomcat7-admin pour disposer de la webapp manager bien pratique.

apt-get install tomcat7 tomcat7-admin

Après l'installation des paquets le serveur se lance automatiquement et vous devez obtenir le classique It works ! à l'adresse http://127.0.0.1:8080/

Pour le déploiement de GeoServer nous allons utiliser le manager interne de Tomcat, il est nécessaire pour cela de définir un utilisateur avec les bonnes permissions en éditant le fichier /etc/tomcat7/tomcat-users.xml. Nous allons y ajouter un utilisateur foobar avec le mot de passe barfoo, cela va consister à ajouter les 2 lignes suivantes :

<role rolename="manager-gui"/>
<user username="foobar" password="barfoo" roles="manager-gui"/>

Le fichier contient des exemples qui aident à suivre la bonne syntaxe, ce qui est important ici est le rôle manager-gui.

La configuration par défaut de tomcat limite la taille des fichiers web archive à 50Mo, hors la taille du .war de geoserver dépasse cette limite, il faut par conséquent l'augmenter. Il faut pour cela éditer le fichier /usr/share/tomcat7-admin/manager/WEB-INF/web.xml. Recherchez les balise <max-file-size> et <max-request-size>, puis remplacez leur valeur par 78643200 soit 75MB de limite au lieu des 50MB par défaut.

La dernière version de GeoServer stable est la 2.1.2 qui est disponible en ligne à l'adresse http://geoserver.org/display/GEOS/Stable, il convient de télécharger la version Web archive. Vous obtiendrez un fichier geoserver-2.1.2-war.zip qu'il conviendra de décompresser.

Maintenant que nous avons installé et configuré Tomcat, téléchargé le .war de GeoServerger, nous pouvons ouvrir le manager à l'adresse http://127.0.0.1:8080/manager/html et y rechercher le formulaire Déployer comme le montre l'image suivante.

tomcat-war.png

Indiquez l'emplacement du fichier .war dans le champs nommé Choisir le fichier WAR à téléverser et cliquez sur Déployer, si tout se passe bien ça y est GeoServer est installé.

Il reste à tester l'url http://127.0.0.1:8080/geoserver/web/ et hop Geoserver 2.1.2 sous Tomcat7.

De base GeoServer contient un ensemble de données de test, regardez le lien à gauche Prévisualisation de la couche et appréciez la richesse de l'outil.

Pour se connecter en tant qu'admin sur GeoServer utilisez les login/pass par défaut admin/geoserver, ceux-ci sont définis dans le fichier /var/lib/tomcat7/webapps/geoserver/data/security/users.properties.

Il est à noter que cette méthode bien que valable dans le principe pour Tomcat6 certain emplacement de fichiers sont différents dans la pratique.

Backport Tomcat 6 et 7 pour squeeze

J'ai mis en ligne hier soir les backports pour squeeze des versions de Tomcat suivante :

  • tomcat7 7.0.23
  • tomcat6 6.0.33

Disponible sur mon dépôt personnel.

Je testerai prochainement la dernière version de Geoserver sur Tomcat7.