«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Развертывание приложений Spring Boot на Koyeb

Развертывание приложений Spring Boot на Koyeb

Опубликовано 8 ноября 2024 г.
Просматривать:447

Deploying Spring Boot Applications on Koyeb

Введение

Когда мы как разработчики начинаем что-то создавать, одна из наших ключевых целей — поделиться тем, что мы создали, с другими. Для разработчиков внешнего интерфейса это часто несложно благодаря отличным хостинговым сервисам, таким как Vercel и Netlify, которые беспрепятственно поддерживают приложения внешнего интерфейса. Однако для серверных разработчиков демонстрация нашей работы может оказаться более сложной задачей. Мы создаем API, работаем с базами данных, и хотя JSON может быть мощным инструментом, он не так привлекателен визуально, как анимация, созданная с помощью CSS или Lottie.

Вот почему крайне важно найти эффективный и надежный способ развертывания серверных приложений. Spring Boot, популярная платформа на основе Java, упрощает процесс создания готовых к использованию приложений, но их развертывание по-прежнему может быть проблемой. Именно здесь на помощь приходит Koyeb. Koyeb предлагает мощную и простую в использовании платформу, которая позволяет разработчикам быстро развертывать свои приложения Spring Boot с минимальной настройкой. В этом руководстве мы проведем вас через весь процесс развертывания приложения Spring Boot с базой данных PostgreSQL на Koyeb, от начала до конца.


1. Предварительные условия

Прежде чем мы углубимся в процесс развертывания, убедитесь, что у вас есть следующее:

  • Базовое приложение Spring Boot. Если у вас его нет, вы можете быстро создать проект с помощью Spring Initializr со следующими зависимостями:
    • Весенняя паутина
    • Весенние данные JPA
    • Драйвер PostgreSQL
  • Репозиторий GitHub (или GitLab/Bitbucket), где размещается ваш проект Spring Boot.
  • Аккаунт Neon. Зарегистрируйтесь на Neon
  • Аккаунт Koyeb. Зарегистрируйтесь на сайте Koyeb, если у вас его нет.
  • Maven или Gradle установлен, в зависимости от того, как настроен ваш проект Spring Boot.

2. Настройка базы данных

  • На Koyeb создайте экземпляр БЕСПЛАТНОЙ базы данных PostgreSQL, которая предоставит URL-адрес базы данных, , но ограничена 50 часами в месяц.

— В Neon создайте экземпляр БЕСПЛАТНОЙ базы данных PostgreSQL, которая также предоставит URL-адрес базы данных.


3. Подключите базу данных с помощью Spring boot.

В каталоге ресурсов вы создадите файл с именем env.properties, внутри которого будут храниться все переменные среды, в данном случае DB_URL, DB_USERNAME и DB_PASSWORD.

НИКОГДА НЕ КОММУТИРУЙТЕ этот файл в репозиторий вашего GitHub.

файл env.properties:

DB_USERNAME=
DB_PASSWORD=
DB_URL=

Ваш файл application.properties:

файл 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

Объяснение

  • server.port — это порт, на котором будет работать ваше приложение. Мы устанавливаем переменную среды PORT с резервным значением 8080 на случай, если PORT имеет значение null.
  • spring.datasource.url — это переменная среды, поступающая из панели управления Neon или Koyeb.
  • spring.datasource.username — это переменная среды, полученная из панели управления Neon или Koyeb.
  • spring.datasource.password — это переменная среды, получаемая из панели управления Neon или Koyeb.
  • spring.config.import — импортирует файл, в котором вы храните свои конфиденциальные данные.

4. Создайте файл system.properties.

В корне проекта создайте файл system.properties.

Этот файл определяет версию среды выполнения Java, которую следует использовать, чтобы пакет сборки Koyeb Java выполнял проект с правильной версией.

Помните: Koyeb принимает значения основных версий 1.8, 11, 13, 15, 17, 19 и 20.

Если вы не укажете версию Java, будет использоваться версия 1.8.

Я использую Java 21. Если вы используете другую версию, измените ее соответствующим образом.

system.properties

java.runtime.version=21

5. Создайте контроллер

Этот контроллер будет отображать сообщение Hello World по маршруту /.

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. Отправьте код на Github.

Создайте общедоступный репозиторий на Github и разместите свой код. Получите URL этого репозитория.


7. Развертывание на Koyeb

  • Войдите в свою учетную запись koyeb.
  • Перейдите в раздел «Сервисы» > «Веб-сервисы» > «Создать веб-сервисы с помощью Github».
  • Подключитесь к Github или вставьте URL-адрес общедоступного репозитория.
  • Подождите, пока проект будет построен.
  • В случае успеха будет создан общедоступный URL-адрес, и каждый сможет получить доступ к вашему приложению Spring Boot.

Заключение

Вот и все! Вы создали приложение Spring Boot, подключили его к облачной базе данных и развернули все на Koyeb. Это может стать началом проекта, который вы хотите продемонстрировать в своем портфолио, позволяя клиентам увидеть, на что вы способны.

Вы можете расширить это приложение с помощью статьи о загрузке изображений.

Спасибо, что прочитали!


? Ссылка

  • Koyeb — развертывание Spring Boot
  • Коеб — Справочник по Java

? Поговори со мной

  • LinkedIn
  • Гитхаб
  • Портфель
Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/mspilari/deploying-spring-boot-applications-on-koyeb-44kj?1. Если обнаружено какое-либо нарушение прав, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3