Реализация Spring Boot с ReactJS - PullRequest
       4

Реализация Spring Boot с ReactJS

0 голосов
/ 26 сентября 2018

Я слежу за этим сообщением в блоге , чтобы создать загрузочную пружину с проектомactjs.


Для того, чтобы мой проект заработал, я заметил, что у меня должны быть оба моихсервер nodejs и мой встроенный tomcat-сервер с весенней загрузкой (я использовал yarn start для запуска приложения реакции).Это всегда будет так?Нужно ли запускать сервер nodejs, чтобы визуализировать ответ весенней загрузки в моем пользовательском интерфейсе реагировать?Или я могу только запустить мой сервер Tomcat.


Кроме того, я заметил, что в моем приложении реакции оно запускается на localhost: 3000, тогда как мое приложение весенней загрузки запускается на localhost: 9080.И в моем package.json у меня есть прокси, определенный как localhost:8080.Как сделать так, чтобы оба приложения находились под одним хостом и обслуживали порт?

Ответы [ 2 ]

0 голосов
/ 27 сентября 2018

Следуйте приведенным ниже инструкциям, и все будет в порядке.

  1. В вашем приложении для весенней загрузки в разделе application / properties не определяйте порт, поэтому ваша загрузка sprig может работать по умолчанию до 8080 или9080 хорошо, если вы можете работать на нем.

  2. Создайте толстый флягу вашего проекта весенней загрузки

  3. разверните его на /opt/your project nameна сервере.

  4. запустите загрузочное приложение с помощью nohup java -jar jarname & или создайте для него службу, прочитайте документацию по Spring для запуска jar как службы.

  5. оно запустит ваше приложение на 8090 или 8080 как угодно.

Теперь давайте перейдем к вашему внешнему приложению, которое реагирует.

наЧтобы запустить приложение переднего плана, есть несколько способов.

  1. установить сервер Apache или ngnix на свою машину
  2. запустить сборку пряжи, которая сгенерирует ваши оптимизированные файлы в папке сборки, сделатьубедитесь, что вы определили URL-адрес вашего приложения.
  3. разверните все сгенерированные файлы в apache/ngnix rootпапка для ex /var/www/html

Теперь, если у вас есть, скажем, имя домена example.com, тогда ваше внешнее приложение может быть доступно с http://www.example.com, а бэкэнд-API доступны на http://www.example.com:8080, убедитесь, что 8080и 80 разрешено.

Теперь вы думаете, нет, я хочу также, чтобы мой API был доступен для www.example.com, а затем сначала убедитесь, что контекстный путь определен для вашего API, чтобы они были доступны с базовым путем, скажем /api - это ваш базовый путь.

, затем определите прокси на сервере apache или ngnix.

<VirtualHost *:80>
  ProxyRequests Off
  ProxyPass /api http://localhost:8080/api
  ProxyPassReverse /api http://localhost:8080/api
</VirtualHost>

Теперь вы можете также получить доступ к своему API на www.example.com/api

0 голосов
/ 27 сентября 2018

@ Робин, я сделал проект для моей последней компании, используя те же технологии около 9 месяцев назад.Я положил его в производство, прежде чем уйти, и это было успешно!У меня есть шаблон этого проекта https://github.com/gasparteixeira/springboot-reactjs-app.

Взгляните на структуру.Пример: для разработки продолжайте использовать инструменты весенней загрузки и запуск пряжи для реакции!Но когда вы собираетесь создать jar / war, убедитесь, что вы встроили (yarn run build) в свой реактивный проект.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...