Back End/AWS

[AWS] 4. EC2로 Spring 프로젝트 배포해보기

DevPing9_ 2022. 2. 10. 11:32

EC2 환경설정이 안되신 분들은 아래 포스팅을 보고 오시면 됩니다..!

 

 

[AWS] 2. EC2에 접속하여 초기설정하기 (환경설정, Configuration)

노트북으로 Mac 을 쓰고 있어서 리눅스 명령어엔 익숙하다 생각했는데, 쪼오오금 다르다.. sudo 가 root 권한으로 파일을 액세스하는 명령어인데, vi로 파일수정을 할 시 root 권한이 아니면 쓰기 및

developer-ping9.tistory.com

 

 

 

1. 깃허브에서 내 프로젝트 Clone

mkdir 새폴더명 && cd 새폴더명
git clone 레파지토리주소

2. gradlew 파일을 활용한 gradle 실행과 테스트코드 점검

./gradlew test

* EC2에 gradle 을 설치하지 않아도 gradlew 파일로 인해 gradle 을 사용가능하다

* 빌드가 성공해야 build 폴더에 jar 파일이 만들어진다.

 

 

3. jar 파일 추출

cp build/libs/*.jar ../

 

 

 

4. 백그라운드로 jar 파일 실행

nohup java -jar [jar 파일이름] 2>&1 &

* 2>&1 : stderr를 stdout 으로 (nohup.out)

* 마지막의 & : 백그라운드 실행

* nohup 은 디폴트로 stdout 을 nohup.out에 쓰는데 2>&1 로 stderr 도 같이 nohup.out 에 씀

 

 

5. 퍼블릭 IPv4 DNS 주소로 확인

감격....

 

 

 

# 번외 (nohup 의 다른 사용 예시)

* 0(stdin) , 1(stdout), 2(stderr)

 

1. 리다이렉션으로 stdout과 stderr 를 기록하지 않는다.

nohup java -jar test.war >/dev/null 2>&1 &

 

2. stdout 은 stdout.txt 파일에, stderr는 stderr.txt 파일에 기록

nohup java -jar test.war 1>stdout.txt 2>stderr.txt &

 

 

 

# Reference

>> Linux nohup 명령어 파헤치기

 

[Linux] nohup 명령어 2>&1 의미 – 흑곰의 유익한 블로그 2호점

[Linux] nohup 명령어 2>&1 의미 nohup 명령어는 터미널이 끊긴 이후에도 프로세스를 종료하지 않기 위해 사용한다. 예를 들어 스프링부트로 작성한 war 파일(또는 jar 파일)을 실행하는 nohup 명령어는 다

it-archives.com

 

728x90