본문 바로가기

프로그래밍/스프링 부트와 AWS로 구현하는 웹서비스

8.2 배포 스크립트 만들기

배포 : 작성한 코드를 실제 서버에 반영하는 것

 

배포과정

  • git clone 혹은 git pull을 통해 새 버전의 프로젝트를 받음
  • Gradle이나 Maven을 통해 프로젝트 테스트와 빌드
  • EC2 서버에서 해당 프로젝트 실행 및 재실행

배포할 때 마다 개발자가 하나하나 명령어를 실행하는 것은 불편하다

-> 쉘 스크립트를 작성해서 스크립트를 실행만 하면 자동 진행이 되도록 한다.

 

쉘 스크립트는 리눅스에서 기본적으로 사용할 수 있는 스크립트 파일의 한종류입니다.

( 쉘 스크립트는 .sh의 확장자를 가진 파일 )

( 노드 js 는 .js라는 파일을 통해 서버에서 작동합니다. )

 

빔(VIM)은 GUI 환경이 아닌 리눅스 환경에서 사용할 수 있는 도구입니다.

 

리눅스에서는 빔 외에도 이맥스(Emacs), 나노(NANO) 등의 도구를 지원합니다.

가장 대중적인 것은 빔입니다.

 

deploy.sh파일을 생성합니다.

- vim ~/app/step1/deploy.sh

 

<간단 빔 사용법>

(출처 : github.com/johngrib/simple_vim_guide/blob/master/md/for_beginners.md

 

johngrib/simple_vim_guide

simple vim guide. Contribute to johngrib/simple_vim_guide development by creating an account on GitHub.

github.com

모드 전환 방법

  • 화면의 최하단을 봅니다. NORMAL이라 되어 있으면 NORMAL모드이고, INSERT라 되어 있으면 INSERT모드입니다.

NORMAL모드일 때에는 아직 마음껏 타이핑을 하지 않도록 합니다. 커서가 여기저기 점프하고 글자가 삭제될 수
있습니다.
INSERT모드가 되면 평범한 워드 프로세서처럼 사용할 수 있습니다.

  • NORMAL모드일 때 i를 누르면 INSERT모드로 바뀝니다.
  • INSERT모드일 때 <ESC>를 누르면 NORMAL모드로 돌아갑니다.

여러 가지 모드 전환 방법이 있지만 일단 위의 두 키만 기억해 두도록 합니다.

VIM을 종료하는 방법

VIM 사용법을 모르는 사람이 우연히 VIM을 실행하여 종료하지 못하는 경우가 있습니다.

  • VIM은 NORMAL모드에서만 종료할 수 있습니다.
  • INSERT모드라면 <ESC>키를 누르면 NORMAL모드로 전환할 수 있습니다.
  • NORMAL모드라면 아래의 표에 나와 있는 방법을 참고하여 VIM을 종료하도록 합니다.

생성한 파일에 스크립트문을 추가하고 실행 권한을 추가합니다.

- chmod +x ./deploy.sh

 

스크립트를 실행합니다.

- ./delploy.sh

 

nohup.out 파일을 열어 로그를 봅니다.

- vim nohup.out

- nohup.out 파일은 애플리케이션에서 출력되는 모든 내용을 갖고 있습니다.

 

에러가 발생합니다.