실행중인 java -jar를 종료하고, *.jar 파일을 실행하는 명령어를 스크립트로 만들어 명령어를 줄여봅니다.
스크립트 생성 전
시작 명령어
nohup java -jar 파일명.jar &
종료 명령어
# PID 알아오기
ps -ef | grep java
# 종료
kill -15 [위에서 알아온 PID]
kill -9 (kill) 사용보다 kill -15 (terminate)를 사용하는 것이 더 안전하다고 합니다.
그렇게 길지 않은 내용이긴 하지만, 하나의 명령어로 이용하고 싶습니다.
실행 중이라면, 종료 후 시작 스크립트
start.sh
#!/bin/bash
JAR=site-0.0.1-SNAPSHOT.jar
LOG=/root/site.log
SITE_PID=$(ps -ef | grep java | grep site | awk '{print $2}')
if [ -z "$SITE_PID" ];
then
nohup java -jar $JAR > $LOG 2>&1 &
echo "SITE start!"
else
kill -15 $SITE_PID
echo "SITE stopped."
nohup java -jar $JAR > $LOG 2>&1 &
echo "SITE start!"
fi
- JAR=본인_파일명.jar
- LOG=원하는 경로
# 현재 경로를 확인하는 명령어
pwd
- SITE_PID=$(ps -ef | grep java | grep 본인_파일명 | awk '{print $2}')
종료 스크립트
stop.sh
#!/bin/bash
SITE_PID=$(ps -ef | grep java | grep site | awk '{print $2}')
if [ -z "$SITE_PID" ];
then
echo "SITE is not running"
else
kill -15 $SITE_PID
echo "SITE stopped."
fi
스크립트 파일 업로드
터미널에서 vi 편집기 등으로 위 *.sh 들을 편집할 수 있습니다.
하지만, 저는 로컬에서 편한 에디터로 작업 후 FTP로 업로드 했습니다.
하지만, 파일 중 하나에서 오류가 발생했습니다.
-bash: ./test.sh: /bin/bash^M: bad interpreter: No such file or directory
오류가 난 파일을 vi -b 명령어로 열어줍니다. -b 를 붙여야 문자열 끝에 ^M이 붙은 것을 확인할 수 있습니다.
^M을 다 지워주고 저장하면 됩니다. (편집: i
, 편집 완료: esc
, 저장종료: :wq
)
vi -b test.sh
파일 권한 추가
chmod +x start.sh
chmod +x stop.sh
명령어 실행 결과 화면
참고 URL : 점프 투 스프링부트 > 4-06 서버 스크립트
'냐냐한 IT > 냐냐한 실습 기록' 카테고리의 다른 글
Nginx + Ubuntu 환경에 certbot 설치 (0) | 2023.02.09 |
---|---|
Nginx 설치 (Naver Cloud, Ubuntu 16.04) (0) | 2023.02.08 |
NAVER CLOUD, Public IP(공인 IP) 신청 및 Spring Boot 실행 확인 + 도메인 연결 (0) | 2023.02.01 |
NAVER CLOUD PLATFORM 가입 및 1년 무료 서버 생성, 콘솔 접속까지 (0) | 2023.01.31 |
IndexedDB API: IndexedDB 주요 특징 및 기본 용어 (0) | 2022.11.16 |