En aquest tema, aprendrem com desplegar una aplicació Spring Boot a Heroku, una plataforma com a servei (PaaS) que permet als desenvolupadors construir, executar i operar aplicacions completament a la núvol. Heroku és conegut per la seva facilitat d'ús i la seva integració amb Git, cosa que fa que el procés de desplegament sigui molt senzill.

  1. Prerequisits

Abans de començar, assegura't de tenir els següents elements configurats:

  • Un compte a Heroku (pots registrar-te gratuïtament a Heroku).
  • Heroku CLI instal·lat al teu sistema. Pots descarregar-lo des de Heroku CLI.
  • Git instal·lat al teu sistema.
  • Una aplicació Spring Boot llesta per ser desplegada.

  1. Configuració del projecte

2.1. Crear un fitxer Procfile

Heroku utilitza un fitxer anomenat Procfile per saber com executar la teva aplicació. A l'arrel del teu projecte Spring Boot, crea un fitxer anomenat Procfile amb el següent contingut:

web: java -jar target/nom-del-teu-arxiu.jar

Assegura't de substituir nom-del-teu-arxiu.jar pel nom del fitxer JAR generat pel teu projecte.

2.2. Configuració de Maven

Assegura't que el teu pom.xml estigui configurat per empaquetar l'aplicació com un fitxer JAR executable. Afegeix les següents dependències i plugins si no estan ja presents:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
</dependency>

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <version>2.5.4</version>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

  1. Desplegant l'aplicació a Heroku

3.1. Crear una aplicació a Heroku

Obre una terminal i executa els següents comandos per crear una nova aplicació a Heroku:

heroku login
heroku create nom-de-la-teva-aplicacio

Substitueix nom-de-la-teva-aplicacio pel nom que vulguis donar a la teva aplicació.

3.2. Desplegar l'aplicació

A continuació, afegeix els fitxers del teu projecte a un repositori Git i puja'ls a Heroku:

git init
git add .
git commit -m "Primera versió de l'aplicació Spring Boot"
git push heroku master

Heroku començarà a construir i desplegar la teva aplicació. Un cop finalitzat el procés, veuràs un missatge indicant que l'aplicació s'ha desplegat correctament.

3.3. Verificar el desplegament

Per verificar que l'aplicació s'ha desplegat correctament, pots obrir el navegador i anar a l'URL proporcionada per Heroku. També pots utilitzar el següent comando per obrir l'aplicació directament des de la terminal:

heroku open

  1. Configuració de variables d'entorn

Heroku permet configurar variables d'entorn que poden ser utilitzades per la teva aplicació. Per exemple, pots configurar una variable d'entorn per a la connexió a una base de dades:

heroku config:set SPRING_DATASOURCE_URL=jdbc:postgresql://host:port/dbname

Pots veure totes les variables d'entorn configurades amb el següent comando:

heroku config

  1. Monitorització i escalat

Heroku proporciona eines per monitoritzar i escalar la teva aplicació. Pots veure els logs de la teva aplicació amb el següent comando:

heroku logs --tail

Per escalar la teva aplicació, pots utilitzar el següent comando per augmentar el nombre de dynos (unitats de computació) en execució:

heroku ps:scale web=2

Conclusió

En aquest tema, hem après com desplegar una aplicació Spring Boot a Heroku. Hem cobert la configuració del projecte, la creació d'una aplicació a Heroku, el desplegament de l'aplicació i la configuració de variables d'entorn. També hem vist com monitoritzar i escalar la teva aplicació. Amb aquests coneixements, ja estàs preparat per desplegar les teves aplicacions Spring Boot a Heroku i aprofitar els avantatges d'aquesta plataforma.

Curs de Spring Boot

Mòdul 1: Introducció a Spring Boot

Mòdul 2: Conceptes bàsics de Spring Boot

Mòdul 3: Construint serveis web RESTful

Mòdul 4: Accés a dades amb Spring Boot

Mòdul 5: Seguretat a Spring Boot

Mòdul 6: Proves a Spring Boot

Mòdul 7: Funcions avançades de Spring Boot

Mòdul 8: Desplegant aplicacions Spring Boot

Mòdul 9: Rendiment i monitorització

Mòdul 10: Millors pràctiques i consells

© Copyright 2024. Tots els drets reservats