AWS(Amazon Web Services)
스프링부트 jar 무중단 배포하기(백그라운드 실행)& 서버종료하기
dev.mk
2022. 9. 18. 22:47
반응형
보통 EC2 우분투에 프로젝트.jar 파일을 파일질러라로 업로드하고 해당경로에서
아래의 명령어를 실행하면 익숙한 로그와 함께 프로젝트가 실행된다.
java -jar 파일명.jar
하지만 ssh를 종료하면 서버도 종료된다.
그래서 ssh를 종료해도 백그라운드 실행 시켜야 한다.
nohup (no hangup) 커맨드를 사용하면 ssh 접속이 끊긴 이후에도 백그라운드에서 jar가 계속 돌아간다.
nohup java -jar 프로젝트.jar &
명령어를 실행하면
nohup: ignoring input and appending output to 'nohup.out'
메세지가 나온다. (정상)
서버를 종료할때는 nohup 프로세스의 pid를 강제로 죽이거나
8080포트를 사용중인 pid를 죽이면 된다.
1. nohup이 실행되고 있는 프로세스 찾아서 kill하기
ps -ef
nohup으로 무중단 배포했던 jar가 보인다. pid는 2919015
kill -9 2919015
kill명령어로 강제종료후 ps -ef하면 안보인다.
2. 실행중인 8080 찾아서 kill 하기
netstat -tnlp
사용중인 8080 포트 확인
그럼 실행중인 8080포트가 보이고 2919015/java란 pid가 보인다
마찬가지로 kill 명령어로 강제종료시킨다.
kill -9 2919015
반응형