Aplicación Spring Boot en Heroku. Instalación y Configuración

El objetivo de este post es mostrar los pasos a seguir para generar desde cero una API Web con el framework Spring Boot y desplegarlo con la herramienta Heroku. De esta manera podremos mostrar nuestra propia aplicación web.

Primero nos deberemos dar de alta en la web de Heroku. Y, para poder desarrollar nuestra aplicación, será necesario tener instalado un IDE con el que podamos también ejecutar la misma en local. En esta guía utilizaremos Eclipse y Windows.

Antes de nada comprobaremos la versión de Java que tenemos instalada. Abriremos la consola de comandos de Windows y ejecutaremos el siguiente comando:

C:\\Users\\javier> java -version
java version '1.8.0_131'
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

Para poder utilizar el framework de Spring necesitaremos tener instalada la versión 8 o 9 de Java. En caso de no tener instalado Java en nuestro PC deberemos descargarlo.

Cuando tengamos instalada la versión adecuada de Java, instalaremos el IDE que vamos a utilizar para desarrollar la API. Para ello, el equipo de Spring nos proporciona un IDE basado en Eclipse con los plugins necesarios para poder ejecutar aplicaciones con este framework. Para descargarnoslo accederemos a la siguiente url:

El fichero descargado será un .jar que deberemos ejecutar con doble click y el cúal nos generará una carpeta llamada 'sts-x.x.x.RELEASE'. En la carpeta generada se encontrará el lanzador del IDE (SpringToolSuite4.exe). Al lanzarlo nos solicitará establecer la carpeta donde se encontrarán los proyectos con los que trabajemos (workspace), que por defecto será el directorio del usuario.

Una vez tengamos nuestro entorno de desarrollo abierto, pasaremos a generar la estructura de un proyecto con Spring Boot por defecto. Esto es bastante sencillo gracias a la herramienta Spring Initializr. En la web indicada, deberemos rellenar los campos como aparecen en la siguiente imagen:

Siendo el campo artifact el nombre del paquete final de nuestro proyecto y group el nombre reservado de la compañia (que podemos ignorar en este caso). Deberemos fijarnos en que la versión de Java seleccionada sea la misma que tenemos instalada en nuestro PC. También es importante el campo Dependencies a través del cual la herramienta nos añadirá en el fichero de depencias del proyecto las indicadas.

Con el formulario relleno podremos exportar el proyecto con el botón Generate el cúal nos generará un fichero .zip que deberemos descomprimir y guardar en la carpeta que deseemos (la carpeta del workspace del IDE por ejemplo). Esta carpeta podremos importarla desde el IDE a través de File > Import > Maven > Existing Maven Projects:

Tras la importación del proyecto podremos probar a ejecutarlo y comprobar que no se produce ningún error pulsando el botón cuadrado con el play verde en la parte inferior izquierda del IDE:

Una vez comprobado que el proyecto ejecuta correctamente, el siguiente paso sería generar una clase Controller que maneje las llamadas a nuestra API. Dentro del paquete com.example.api generaremos una clase HelloWorld.java con el siguiente contenido:

package com.example.api;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloWorld {

   @GetMapping("/")
   public String hello() {
      return "Hello World";
   }

}

Y si volvemos a ejecutar nuestro proyecto con los cambios, y accedemos desde el navegador a la URL http://localhost:8080, deberíamos ver lo siguiente:

Finalmente, nos quedaría desplegar nuestro proyecto en Heroku y que estuviese público de manera que más personas pudiesen acceder a través de Internet. Para ello deberemos usar la herramienta de control de versiones Git, la cúal podremos instalar desde la siguiente url.

Una vez la tengamos instalada ejecutamos el siguiente comando dentro del directorio de nuestro proyecto:

C:\\Users\\javier> git init
Inicializado repositorio Git vacío en /home/javier/Escritorio/api/.git

Tras esto deberemos instalar la herramienta de Heroku que nos permitirá desplegar en su web nuestro proyecto (descarga):

Cuando haya finalizado la instalación del cliente de Heroku, comprobaremos que se ha instalado correctamente:

C:\\Users\\javier>heroku
CLI to interact with Heroku

VERSION
heroku/7.42.5 win32-x64 node-v12.16.2
...

En este punto deberíamos habernos creado un usuario en Heroku, ya que tendremos que loguearnos con el usuario de Heroku en nuestro PC:

C:\\Users\\javier> heroku login

Y ahora viene uno de los pasos importantes, generar nuestra aplicación en la web de Heroku de manera que desde la propia web podamos gestionar también ciertos parámetros e información. Desde el directorio del proyecto ejecutamos el siguiente comando:

C:\\Users\\javier> heroku create api
Creating api… done
https://api.herokuapp.com/

Con esto, debería aparecernos en nuestro panel de la web de Heroku, la aplicación generada:

Y finalmente, únicamente tendremos que desplegar el proyecto usando git en la máquina de Heroku:

C:\\Users\\javier> git push heroku master

Y voilá una vez haya finalizado el despliegue de la aplicación, podremos acceder a ella a través de la url que nos devolvió el comando de Heroku en la creación del proyecto:


Etiquetas