lunes, 31 de marzo de 2014

Tomcat y Eclipse: compañeros de camino


En este post vamos a finalizar nuestro entorno de pruebas. Vamos a instalar Tomcat 7 para poder desplegar las aplicaciones que hagamos en nuestro entorno de desarrollo.

Arrancamos nuestra máquina virtual y accedemos a ella a través de nuestro cliente favorito: putty.


Si habéis hecho lo mismo que yo vemos que tenemos algunas actualizaciones pendientes, para estar seguros de que tenemos los paquetes de los repositorios actualizados ejecutamos el comando:

sudo apt-get update

La consola empezará a escribir como loca, en cuando metamos nuestro password. Tranquilos, sólo está actualizando lo que el sistema necesita.



Cuando llegue al final podremos leer:

Leyendo lista de paquetes... Hecho

Ahora vamos a instalar Tomcat 7 y el Administrador Web de Tomcat.

Ejecutamos el comando:

sudo apt-get install tomcat7 tomcat7-admin

A continuación nos aparece todo lo que va a instalar, y nos pregunta si estamos de acuerdo.


Le decimos que Sí y esperamos un rato (largo). Como veis es bastante fácil.

Él sólo se va a bajar Java y todas las dependencias que necesita:


Cuando termina en la consola aparece lo siguiente:

Procesando disparadores para libc-bin ...
ldconfig deferred processing now taking place

Para ver si todo ha ido bien podemos ver la versión de JAVA que tenemos instalada con:

java -version

A mí me aparece esto:

java version "1.6.0_30"
OpenJDK Runtime Environment (IcedTea6 1.13.1) (6b30-1.13.1-1ubuntu2~0.12.04.1)
OpenJDK Client VM (build 23.25-b01, mixed mode, sharing)

Cuando instalamos Tomcat así, se "reparte" por el sistema de ficheros de forma que todo cuadre con el sistema operativo. Las rutas que necesitamos saber son éstas:

Dentro de /var/lib/tomcat6 tenemos estos directorios:
  • common  
  • conf 
  • logs  
  • server  
  • shared  
  • webapps  
  • work
Para arrancarlo, pararlo y esas cosas, podemos usar el comando service:

Arrancar: sudo tomcat7 start
Parar: sudo tomcat7 stop
Reiniciar: sudo tomcat7 restart

Cualquier servicio que instalemos se puede gestionar desde este comando. Mola, ¿eh?

Ahora vamos a configurar los permisos del administrador web.

Por defecto viene deshabilitado, pero vamos a crearnos un usuario para poder gestionar las aplicaciones que contiene.

Editamos su fichero de configuración:

sudo vi /var/lib/tomcat7/conf/tomcat-users.xml

Yo soy de usar este editor, aunque podéis usar cualquier otro.

Éste es el contenido del fichero:



Cómo podéis ver esté todo comentado y muy bien documentado. Explica perfectamente lo que hay que hacer. Yo lo que voy a hacer es pegar este contenido dentro de <tomcat-users>:

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

Esto otorgará al usuario "tecnificados" privilegios para poder entrar vía web al administrador de Tomcat.



Guardamos el fichero y reiniciamos Tomcat con sudo service tomcat7 restart.

Vamos a probarlo a través del navegador, el contexto es /manager y el puerto por defecto de Tomcat es el 8080.

Ahora hay que redirigir el puerto 8080 para que funcione (si no sabes qué es esto, mira el anterior post).

Yo lo que hago es redirigir el puerto 80 de mi máquina física al 8080 de la máquina virtual. Cuidado, si tenéis el 80 ocupado no os funcionará la redirección.

Ésta es mi configuración de puertos:



Con esto lo que hago es reservarme el puerto 8080 para el Tomcat que usaremos en desarrollo y usar el puerto 80 para el de pruebas.

En mi caso yo accedo al administrador de tomcat así: http://localhost/manager, si lo queréis dejar en el puerto 8080 accederíais con esta otra URL: http://localhost:8080/manager

Al escribir la URL en el navegador lo primero que nos pide es la autenticación:


Escribimos lo que hemos puesto en el fichero de usuarios y pulsamos aceptar.




Desde esta pantalla podremos subir nuestras aplicaciones, pararlas o borrarlas.

Y con esto ya tenemos nuestro entorno de pruebas listo.

Ahora sólo nos queda el entorno de desarrollo.