Как развернуть бэкэнд-пакет jar?

Java
Как развернуть бэкэнд-пакет jar?

Хотя это внешний интерфейс, я начал полностековый проект arya-spring-vue с vue, typescript, iview, spring-boot и mysql в качестве технологического стека.

Начальное развертывание файлов переднего плана было освоено:Как развернуть внешний каталог dist?.

А вот серверная часть немного запуталась: во-первых, это не бэкенд, и обычно не имеет опыта в этой области; во-вторых, будь то полностековый проект node или full-stack проект vue+spring, у него есть только был успешно запущен локально.

Я только что успешно развернул arya-spring-vue-be на облачном сервере CentOS Tencent. Давайте запишем это, пока горячо.

  • Предварительное знание
  • Плагин Spring Boot Maven упаковывает пакеты jar, встроенные в tomcat
  • CentOS устанавливает jdk и устанавливает переменные среды
  • Установите MySQL на CentOS7
  • Создайте новую базу данных и пользователя и запустите пакет jar

Предварительное знание

мавен, кот, банка. Хотя у меня есть опыт работы с сервером nodejs, я новичок в стеке технологий Java, поэтому у меня есть следующие вопросы:

  • Как служба java-сервера работает на сервере?
  • Будет ли внешний интерфейс создавать пакет, подобный дистрибутиву?

Прежде чем думать об этих двух вопросах, давайте добавим некоторые предварительные знания.

Как служба java-сервера работает на сервере? Пакет jar, работающий в среде tomcat; пакет jar со встроенным tomcat. Будет ли внешний интерфейс создавать пакет, подобный дистрибутиву? Требуется, обычно пакет jar или военный пакет.mvn packageилиmvn package spring-boot:repackageПакет.

Плагин Spring Boot Maven упаковывает пакеты jar, встроенные в tomcat

Существующие условия: проект с весенней загрузкойarya-spring-vue-beмавен установлен JDK установлен

pom.xml

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<build>
    <plugins>
        ...
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
        ...
    </plugins>
</build>

Пакет

mvn clean package spring-boot:repackage

Упакуйте пакет jar со встроенным tomcat: arya-spring-vue-be-0.0.1-SNAPSHOT.jar

CentOS устанавливает jdk и устанавливает переменные среды

Установить JDK

mkdir /usr/java  # 创建 java 文件夹
cd /usr/java     # 进入 java 文件夹

Загрузите jdk-11.0.5_linux-x64_bin.tar.gz локально. Используйте FileZila, чтобы загрузить установочный пакет JDK в указанную выше папку java, а затем разархивируйте установочный пакет.

// 解压安装包
chmod +x jdk-11.0.5_linux-x64_bin.tar.gz
tar -xzvf jdk-11.0.5_linux-x64_bin.tar.gz
// 设置环境变量
打开 /etc/profile 文件。
vim /etc/profile

Введите следующую конфигурацию и сохраните:

export JAVA_HOME=/usr/java/jdk-11.0.5
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH
// 配置文件立即生效
source /etc/profile

Установите MySQL на CentOS7

[Перевод] Как установить MySQL на CentOS 7

существуетsudo yum install mysql-serverНа этом этапе есть некоторые подводные камни, а во-вторых, загрузка mysql требует некоторого времени ожидания.

Создайте новую базу данных и пользователя и запустите пакет jar

ПроверитьGitHub.com/Ария-весна…

См. следующую конфигурацию базы данных

spring.datasource.url=jdbc:mysql://localhost:3306/arya_spring_vue_be
spring.datasource.username=arya_spring_vue_user
spring.datasource.password=password

Итак, создайте базу данных и пользователя, как это

mysql> create database arya_spring_vue_be;
mysql> create user 'arya_spring_vue_user'@'%' identified by 'password';
mysql> grant all on arya_spring_vue_be.* to 'arya_spring_vue_user'@'%';

Запустите пакет jar:jar -jar arya-spring-vue-be-0.0.1-SNAPSHOT.jar


  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.1.3.RELEASE)

2019-11-29 18:05:43.092  INFO 10520 --- [           main] c.a.s.v.a.AryaSpringVueBeApplication     : Starting AryaSpringVueBeApplication v0.0.1-SNAPSHOT on VM_0_11_centos with PID 10520 (/usr/java/arya-spring-vue-be-0.0.1-SNAPSHOT.jar started by root in /usr/java)
...
2019-11-29 18:06:00.154  INFO 10520 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2019-11-29 18:06:00.184  INFO 10520 --- [           main] c.a.s.v.a.AryaSpringVueBeApplication     : Started AryaSpringVueBeApplication in 19.419 seconds (JVM running for 21.197)
  • Советы красивой весне
  • Tomcat успешно работает на порту 8080
  • AryaSpringVueBeApplication запускается успешно

До сих пор пакет backend jar был успешно развернут!

Оригинальный адрес:GitHub.com/Ария-весна…

Я с нетерпением жду возможности пообщаться с вами и вместе добиться прогресса. Приглашаем вас присоединиться к созданной мной технической дискуссионной группе, тесно связанной с фронтенд-разработкой:

Стремитесь стать отличным front-end инженером!