Хотя это внешний интерфейс, я начал полностековый проект 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-сервера работает на сервере?
- Будет ли внешний интерфейс создавать пакет, подобный дистрибутиву?
Прежде чем думать об этих двух вопросах, давайте добавим некоторые предварительные знания.
- знаток:Мавен за 5 минут,[Перевод] Руководство по началу работы с Maven
- Кот:Первый опыт Apache Tomcat
- банка:[Перевод] Создайте приложение Fat Jar с помощью Spring Boot,[Перевод] Запуск приложения Spring Boot с помощью Maven и исполняемого файла War/Jar
Как служба 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/Ария-весна…
Я с нетерпением жду возможности пообщаться с вами и вместе добиться прогресса. Приглашаем вас присоединиться к созданной мной технической дискуссионной группе, тесно связанной с фронтенд-разработкой:
- Технологический кружок SegmentFault:Синтаксический сахар новой спецификации ES
- Столбец SegmentFault:Будь хорошим фронтенд-инженером, пока ты еще молод
- Знай почти Рубрику:Будь хорошим фронтенд-инженером, пока ты еще молод
- Блог на гитхабе:личный блог 233, пока ты еще молод
- Группа QQ фронтенд-разработки: 660634678
- Публичный аккаунт WeChat: Human Beast Ghost/excellent_developers
Стремитесь стать отличным front-end инженером!