일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 코틀린
- 자바
- flet
- 파이썬
- Spring boot
- android
- kotlin
- write by chatGPT
- 자바네트워크
- 소프트웨어공학
- Java
- NIO
- 웹 크롤링
- write by GPT-4
- chatGPT's answer
- 고전역학
- 리눅스
- JVM
- oracle
- lombok
- 자바암호
- python
- 유닉스
- 역학
- Database
- GPT-4's answer
- GIT
- 인프라
- 뉴턴역학
- 시스템
- Today
- Total
Akashic Records
How to run Spring Boot application in background 본문
How to run Spring Boot application in background
Andrew's Akashic Records 2023. 4. 5. 15:48Spring Boot 애플리케이션을 백그라운드에서 실행하려면 여러 가지 방법이 있습니다. 다음은 몇 가지 일반적인 방법입니다.
nohup 명령어 사용하기:
nohup 명령어를 사용하여 터미널이 종료되어도 프로세스가 계속 실행되도록 할 수 있습니다.
nohup java -jar your-spring-boot-app.jar &
실행 후에 nohup.out 파일에 로그가 기록됩니다. 로그 파일 이름을 변경하려면 다음과 같이 실행하세요.
nohup java -jar your-spring-boot-app.jar > my-logs.log &
screen 명령어 사용하기:
screen은 Linux 및 Unix 기반 시스템에서 여러 터미널 세션을 관리할 수 있는 도구입니다. 새 세션을 만들어 Spring Boot 애플리케이션을 실행한 후 세션을 종료하여 백그라운드에서 계속 실행되도록 할 수 있습니다.
screen -S my-session
java -jar your-spring-boot-app.jar
이제 Ctrl + A, D를 눌러 screen 세션에서 분리할 수 있습니다. 세션을 다시 연결하려면 다음 명령을 사용하세요.
screen -r my-session
systemd를 사용한 서비스로 실행하기:
systemd를 사용하면 Spring Boot 애플리케이션을 서비스로 등록하고 관리할 수 있습니다. 서비스 파일을 생성해야 합니다.
/etc/systemd/system/your-spring-boot-app.service 파일을 생성하고 다음 내용을 입력합니다.
[Unit]
Description=Your Spring Boot Application
After=syslog.target
[Service]
User=your-user
ExecStart=/usr/bin/java -jar /path/to/your-spring-boot-app.jar
SuccessExitStatus=143
TimeoutStopSec=10
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
서비스를 시작하려면 다음 명령을 사용합니다.
sudo systemctl start your-spring-boot-app
서비스 상태를 확인하려면 다음 명령을 사용합니다.
sudo systemctl status your-spring-boot-app
시스템 부팅 시 자동으로 시작되도록 설정하려면 다음 명령을 사용합니다.
sudo systemctl enable your-spring-boot-app
이러한 방법 중 하나를 사용하여 Spring Boot 애플리케이션을 백그라운드에서 실행할 수 있습니다. 상황에 맞는 방법을 선택하여 사용하세요.
'Spring.io' 카테고리의 다른 글
Spring jdbc Template의 종류와 사용방법 (0) | 2023.04.10 |
---|---|
Spring Batch+Quartz에서 Trigger 삭제하고 등록하기 (0) | 2023.04.06 |
Spring Batch에서 REST API로 Quartz Scheduler 변경하기 (0) | 2023.04.04 |
Spring Batch Job을 REST API로 실행하기 (0) | 2023.04.04 |
Spring Boot+JWT 구현 (0) | 2023.04.03 |