Развертывание автономного приложения Springboot в производственной среде - PullRequest
0 голосов
/ 28 мая 2020

Я пытаюсь развернуть свое автономное приложение springboot в рабочей среде на сервере linux. Я пытаюсь использовать готовый сервер tomcat.

'java -jar jarname.jar'

Это работает нормально, но если я закрою свой сеанс шпатлевки, приложение будет удалено.

Теперь я использовал

'nohup java -jar jarname.jar &'

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

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

Спасибо

Ответы [ 3 ]

0 голосов
/ 28 мая 2020

Почему бы не упаковать его в образ Docker и не запустить его на сервере?

Вот несколько идей:

https://medium.com/swlh/deploying-spring-boot-applications-15e14db25ff0

0 голосов
/ 28 мая 2020

Вы можете запустить приложение весенней загрузки как jar, но вам нужно создать службу, чтобы вы могли выполнять свою весеннюю загрузку как демон.

https://dzone.com/articles/run-your-java-application-as-a-service-on-ubuntu

С его помощью вы можете запустить или остановить свое приложение, например:

$ sudo service myspringbootapp stop

$ sudo service myspringbootapp start

0 голосов
/ 28 мая 2020

Ну думаю лучше использовать Linux сервисы для запуска приложения, вы можете прочитать здесь пример

А если хотите собирать логи - лучше запишите их в файл . Spring предоставляет для этого встроенную механику

logging:
    level:
        root: INFO
    file:
        clean-history-on-start: false
        max-history: 7
        max-size: 10MB
        name: some-name
        path: /path/log/dir
        total-size-cap: 0B

...