Comment installer Apache Tomcat 8 sur Ubuntu 14.04

introduction

Apache Tomcat est un serveur Web et un conteneur de servlets utilisés pour desservir les applications Java. Tomcat est une implémentation open source des technologies Java Servlet et JavaServer Pages, publiée par Apache Software Foundation. Ce tutoriel couvre l’installation de base et une partie de la configuration de la dernière version de Tomcat 8 sur votre serveur Ubuntu 14.04.

Conditions préalables

Avant de commencer avec ce guide, vous devez avoir un compte utilisateur distinct, non root, configuré sur votre serveur. Vous pouvez apprendre comment faire cela en effectuant les étapes 1 à 3 dans lesinitial server setup pour Ubuntu 14.04. Nous utiliserons l'utilisateurdemo créé ici pour le reste de ce tutoriel.

Installer Java

Tomcat nécessite que Java soit installé sur le serveur pour que tout code d'application Web Java puisse être exécuté. Répondons à cette exigence en installant OpenJDK 7 avec apt-get.

Commencez par mettre à jour votre index de paquet apt-get:

sudo apt-get update

Puis installez le paquet Java Development Kit avec apt-get:

sudo apt-get install default-jdk

Répondez ày à l'invite pour continuer l'installation d'OpenJDK 7.

Maintenant que Java est installé, créons un utilisateurtomcat, qui sera utilisé pour exécuter le service Tomcat.

Créer un utilisateur Tomcat

Pour des raisons de sécurité, Tomcat doit être exécuté en tant qu’utilisateur non privilégié (c.-à-d. pas root). Nous allons créer un nouvel utilisateur et un nouveau groupe qui exécutera le service Tomcat.

Tout d'abord, créez un nouveau groupetomcat:

sudo groupadd tomcat

Créez ensuite un nouvel utilisateurtomcat. Nous ferons de cet utilisateur un membre du groupetomcat, avec un répertoire personnel de/opt/tomcat (où nous installerons Tomcat), et avec un shell de/bin/false (pour que personne ne puisse se connecter dans le compte):

sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat

Maintenant que notre utilisateurtomcat est configuré, téléchargeons et installons Tomcat.

Installez Tomcat

Le moyen le plus simple d'installer Tomcat 8 à ce stade est de télécharger la dernière version binaire, puis de la configurer manuellement.

Télécharger Tomcat Binary

Trouvez la dernière version de Tomcat 8 sur le siteTomcat 8 Downloads page. Au moment de la rédaction de cet article, la dernière version est8.0.23. Sous la sectionBinary Distributions, puis sous la listeCore, copiez le lien vers le «tar.gz».

Téléchargeons la dernière distribution binaire dans notre répertoire personnel.

Tout d'abord, accédez à votre répertoire personnel:

cd ~

Ensuite, utilisezwget et collez le lien pour télécharger l'archive Tomcat 8, comme ceci (votre lien miroir sera probablement différent de l'exemple):

wget http://mirror.sdunix.com/apache/tomcat/tomcat-8/v8.0.23/bin/apache-tomcat-8.0.23.tar.gz

Nous allons installer Tomcat dans le répertoire/opt/tomcat. Créez le répertoire, puis extrayez l'archive avec les commandes suivantes:

sudo mkdir /opt/tomcat
sudo tar xvf apache-tomcat-8*tar.gz -C /opt/tomcat --strip-components=1

Nous sommes maintenant prêts à configurer les autorisations utilisateur appropriées.

Mettre à jour les autorisations

L'utilisateurtomcat que nous avons configuré doit disposer d'un accès approprié à l'installation de Tomcat. Nous allons le configurer maintenant.

Passez au chemin d'installation de Tomcat:

cd /opt/tomcat

Ensuite, donnez à l'utilisateurtomcat l'accèswrite au répertoireconf, et l'accès dereadaux fichiers de ce répertoire:

sudo chgrp -R tomcat conf
sudo chmod g+rwx conf
sudo chmod g+r conf/*

Faites ensuite de l'utilisateurtomcat le propriétaire des répertoireswork,temp etlogs:

sudo chown -R tomcat work/ temp/ logs/

Maintenant que les autorisations appropriées sont configurées, configurons un script init Upstart.

Installer le script de démarrage

Parce que nous voulons pouvoir utiliser Tomcat en tant que service, nous allons configurer un script Upstart.

Tomcat doit savoir où Java a été installé. Ce chemin est communément appelé «JAVA_HOME». Le moyen le plus simple de rechercher cet emplacement consiste à exécuter cette commande:

sudo update-alternatives --config java
Output:There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java
Nothing to configure.

Le JAVAHOME will be in the output, without the trailing /bin/java. For the example above, the JAVAHOME est surligné en rouge.

Nous sommes maintenant prêts à créer le script Upstart. Créez-le et ouvrez-le en exécutant cette commande:

sudo nano /etc/init/tomcat.conf

Collez le script suivant et modifiez la valeur deJAVA_HOME si nécessaire. Vous pouvez également modifier les paramètres d'allocation de mémoire spécifiés dansCATALINA_OPTS:

/etc/init/tomcat.conf

description "Tomcat Server"

  start on runlevel [2345]
  stop on runlevel [!2345]
  respawn
  respawn limit 10 5

  setuid tomcat
  setgid tomcat

  env JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/jre
  env CATALINA_HOME=/opt/tomcat

  # Modify these options as needed
  env JAVA_OPTS="-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom"
  env CATALINA_OPTS="-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

  exec $CATALINA_HOME/bin/catalina.sh run

  # cleanup temp directory after stop
  post-stop script
    rm -rf $CATALINA_HOME/temp/*
  end script

Sauvegarder et quitter. Ce script indique au serveur d'exécuter le service Tomcat en tant qu'utilisateurtomcat, avec les paramètres spécifiés. Il permet également à Tomcat de s'exécuter au démarrage du serveur.

Nous allons maintenant recharger la configuration Upstart pour pouvoir utiliser notre nouveau script Tomcat:

sudo initctl reload-configuration

Tomcat est prêt à être exécuté. Commencez avec cette commande:

sudo initctl start tomcat

Tomcat n'est pas encore complètement configuré, mais vous pouvez accéder à la page d'accueil par défaut en accédant à votre domaine ou à votre adresse IP suivi de:8080 dans un navigateur Web:

Open in web browser:http://server_IP_address:8080

Vous verrez la page d'accueil Tomcat par défaut, en plus d'autres informations. Nous allons maintenant aller plus loin dans l'installation de Tomcat.

Configurer l'interface de gestion Web Tomcat

Pour utiliser l'application Web Manager fournie avec Tomcat, nous devons ajouter une connexion à notre serveur Tomcat. Nous allons le faire en éditant le fichiertomcat-users.xml:

sudo nano /opt/tomcat/conf/tomcat-users.xml

Ce fichier est rempli de commentaires décrivant comment le configurer. Vous souhaiterez peut-être supprimer tous les commentaires entre les deux lignes suivantes ou les laisser si vous souhaitez référencer les exemples:

tomcat-users.xml excerpt


...

Vous voudrez ajouter un utilisateur qui peut accéder auxmanager-gui etadmin-gui (applications Web fournies avec Tomcat). Vous pouvez le faire en définissant un utilisateur similaire à l'exemple ci-dessous. Assurez-vous de changer le nom d'utilisateur et le mot de passe pour quelque chose de sécurisé:

tomcat-users.xml — Admin User


    

Enregistrez et quittez le fichier tomcat-users.xml. Pour appliquer nos modifications, redémarrez le service Tomcat:

sudo initctl restart tomcat

Accéder à l'interface Web

Maintenant que Tomcat est opérationnel, laissez-nous accéder à l'interface de gestion Web dans un navigateur Web. Vous pouvez le faire en accédant à l'adresse IP publique du serveur, sur le port 8080:

Open in web browser:http://server_IP_address:8080

Vous verrez quelque chose comme l'image suivante:

Tomcat root

Comme vous pouvez le constater, il existe des liens vers les applications Web d'administration pour lesquelles nous avons configuré un utilisateur administrateur.

Jetons un coup d'œil à l'application Manager, accessible via le lien ouhttp://server_IP_address:8080/manager/html:

Tomcat Web Application Manager

Web Application Manager est utilisé pour gérer vos applications Java. Vous pouvez démarrer, arrêter, recharger, déployer et annuler le déploiement ici. Vous pouvez également exécuter des diagnostics sur vos applications (c'est-à-dire trouver des fuites de mémoire). Enfin, des informations sur votre serveur sont disponibles tout en bas de cette page.

Jetons maintenant un œil au Host Manager, accessible via le lien ouhttp://server_IP_address:8080/host-manager/html/:

Tomcat Virtual Host Manager

À partir de la page Virtual Host Manager, vous pouvez ajouter des hôtes virtuels pour servir vos applications.

Conclusion

Votre installation de Tomcat est terminée! Vous êtes maintenant libre de déployer vos propres applications Web Java!