"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Déploiement d'applications Spring Boot sur Koyeb

Déploiement d'applications Spring Boot sur Koyeb

Publié le 2024-09-17
Parcourir:865

Deploying Spring Boot Applications on Koyeb

Introduction

Lorsque nous commençons à créer des choses en tant que développeurs, l'un de nos principaux objectifs est de partager ce que nous avons créé avec les autres. Pour les développeurs front-end, cela est souvent simple, grâce à d'excellents services d'hébergement comme Vercel et Netlify qui prennent en charge les applications front-end de manière transparente. Cependant, pour les développeurs back-end, présenter notre travail peut être plus difficile. Nous construisons des API, travaillons avec des bases de données et, même si JSON peut être puissant, il n'est pas aussi convaincant visuellement qu'une animation créée avec CSS ou Lottie.

C'est pourquoi il est crucial de trouver un moyen efficace et fiable de déployer des applications backend. Spring Boot, un framework Java populaire, simplifie le processus de création d'applications prêtes pour la production, mais leur déploiement peut encore s'avérer un défi. C'est là qu'intervient Koyeb. Koyeb propose une plate-forme puissante et facile à utiliser qui permet aux développeurs de déployer rapidement leurs applications Spring Boot avec une configuration minimale. Dans ce guide, nous vous guiderons tout au long du processus de déploiement d'une application Spring Boot avec une base de données PostgreSQL sur Koyeb, du début à la fin.


1. Conditions préalables

Avant de nous lancer dans le processus de déploiement, assurez-vous de disposer des éléments suivants :

  • Une application Spring Boot de base. Si vous n'en avez pas, vous pouvez générer rapidement un projet à l'aide de Spring Initializr avec ces dépendances :
    • Web de printemps
    • JPA de données de printemps
    • Pilote PostgreSQL
  • Un référentiel GitHub (ou GitLab/Bitbucket), où votre projet Spring Boot est hébergé.
  • Un compte Neon. Inscrivez-vous sur Neon
  • Un compte Koyeb. Inscrivez-vous sur le site Web de Koyeb si vous n'en avez pas.
  • Maven ou Gradle installé, selon la configuration de votre projet Spring Boot.

2. Base de données de configuration

  • Sur Koyeb, instanciez une base de données PostgreSQL GRATUITE, qui fournira une URL de base de données mais est limitée à 50 heures par mois.

-Sur Neon, instanciez une base de données PostgreSQL GRATUIT, qui fournira également une URL de base de données.


3. Connectez la base de données avec Spring Boot

Dans le répertoire des ressources, vous allez créer un fichier appelé env.properties, à l'intérieur duquel stocker toutes vos variables d'environnement, dans ce cas DB_URL, DB_USERNAME et DB_PASSWORD.

NE JAMAIS COMMIT ce fichier dans le référentiel de votre github.

fichier env.properties :

DB_USERNAME=
DB_PASSWORD=
DB_URL=

Votre fichier application.properties :

fichier application.properties :

server.port=${PORT:8080}

spring.datasource.url=${DB_URL}
spring.datasource.username=${DB_USERNAME}
spring.datasource.password=${DB_PASSWORD}

spring.jpa.hibernate.ddl-auto=update

spring.config.import=classpath:env.properties

Explication

  • server.port - Il s'agit du port sur lequel votre application s'exécutera. Nous définissons une variable d'environnement PORT avec un repli de 8080 au cas où PORT serait nul.
  • spring.datasource.url - Il s'agit d'une variable d'environnement provenant du tableau de bord Neon ou Koyeb.
  • spring.datasource.username - Il s'agit d'une variable d'environnement provenant du tableau de bord Neon ou Koyeb.
  • spring.datasource.password - Il s'agit d'une variable d'environnement provenant du tableau de bord Neon ou Koyeb.
  • spring.config.import - Ceci importe le fichier dans lequel vous stockez vos données sensibles.

4. Créez un fichier system.properties

A la racine du projet, créez un fichier system.properties.

Ce fichier spécifie la version d'exécution Java à utiliser pour que le buildpack Java Koyeb exécute le projet avec la version correcte.

Rappelez-vous : Koyeb accepte les valeurs de version majeure 1.8, 11, 13, 15, 17, 19 et 20.

Si vous ne spécifiez pas de version Java, la version 1.8 sera utilisée.

J'utilise Java 21. Si vous utilisez une autre version, modifiez-la en conséquence.

système.propriétés

java.runtime.version=21

5. Créez un contrôleur

Ce contrôleur affichera le message Hello World sur la route /.

package com.example.demo.Modules.User.controller;

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

import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;

@RestController
public class UserController {

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

}

6. Poussez le code sur Github

Créez un référentiel public sur Github et poussez votre code. Saisissez l'URL de ce référentiel.


7. Déployer sur Koyeb

  • Entrez votre compte koyeb.
  • Accédez à Services > Services Web > Créer des services Web avec Github.
  • Connectez-vous à Github ou collez l'URL du référentiel public.
  • Attendez que le projet soit construit.
  • En cas de succès, une URL publique sera générée et tout le monde pourra accéder à votre application Spring Boot.

Conclusion

C'est ça! Vous avez créé une application Spring Boot, l'avez connectée à une base de données cloud et tout déployé sur Koyeb. Cela peut être le début d'un projet que vous souhaitez présenter dans votre portfolio, permettant aux clients de voir ce que vous pouvez faire.

Vous pouvez incrémenter cette application avec un article de téléchargement d'images.

Merci d'avoir lu !


? Référence

  • Koyeb - Déploiement de Spring Boot
  • Koyeb - Référence Java

? Parle moi

  • LinkedIn
  • Github
  • Portefeuille
Déclaration de sortie Cet article est reproduit sur : https://dev.to/mspilari/deploying-spring-boot-applications-on-koyeb-44kj?1 En cas de violation, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3