AWS Spring 프로젝트 배포 - EC2

uuuu.jini·2022년 2월 21일
3

AWS - 서버배포

목록 보기
2/2
post-thumbnail

🐯 AWS EC2 생성&설정

spring 서버 배포를 위해 EC2 인스턴스 생성과 이미 만들어둔 RDS 서버 연결 , spring 배포 등을 진행해 볼 예정이다.

EC2 생성하기를 누르고 OS 선택

우분투 18.04 버전으로 진행할 예정이다.

선택을 누른뒤 검토 및 시작 을 가서 키페어 선택 후 생성을 해준다.

인스턴스가 생성된 것을 확인할 수 있다.

EC2 인스턴스에 SSH 접속 - 원격접속하여 가상 컴퓨터를 다루기

인스턴스 생성시 22번 포트가 열려 있다. git bash를 이용해 접속이 가능하다.
ssh -i 키페어위치(파일드래그) ubuntu@퍼블릭ip주소 이 퍼블릭 ip주소는 ec2인스턴스 내부에서 확인이 가능하다.

배포 파일 빌드 및 EC2에 업로드

인텔리제이의 오른쪽 옆 Gradle에서 build>build를 더블클릭해주면 빌드가 시작된다. 완료되면 왼쪽의 프로젝트 구조에서 build밑에 libs를 보면 ~~~.jar파일이 생성되며 이것이 빌드된 배포파일이다. 이 파일을 EC2에 올려서 실행시키는 것이다.

EC2 인스턴스에 자바 JDK 설치

SSH로 접속한 상태에서 아래와 같이 명령어를 쳐서 설치한다.

sudo apt-get update
sudo apt-get install openjdk-11-jdk //스프링 부트 버전과 맞춰서 설치한다.
java -version //버전 확인

EC2 인스턴스로 배포파일 전송

FileZilla 라는 프로그램을 이용한다. 다운로드

다운로드 완료

맨위의 버튼을 누르면 사이트관리자가 뜨고 New site 를 눌러서 추가해준다.

프로토콜을 SFTP로 바꿔주고 호스트는 EC2 인스턴스의 퍼블릭 IP를 넣어준다. 사용자는 SSH접속시 설정한 이름을 작성하여 주고 키파일은 키페어위치를 찾아서 넣어주면 된다.

연결이 되면 왼쪽이 내 로컬 컴퓨터 오른쪽이 EC2 인스턴스(가상컴퓨터) 가 된다. 오른쪽 리모트 사이트에서 적당한 디렉터리를 ㅁ나들어주고 드래그 앤 드롭으로 jar파일을 옮겨준다.

이후 git bash 에서

java -jar 파일이름.jar 를 쳐주면 구동화면이 나온다.

EC2 인스턴스 보안 설정

8080포트 접속을 위해 80번과 8080의 보안 설정을 해준다.

RDS 보안그룹 설정 처럼 EC2의 보안 그룹으로 들어가서 인바운드 규칙을 편집해준다.

설정을 하고 퍼블릭IP:8080 으로 접속을 하면 접속이 가능한 것을 알 수 있다.

원격접속이 끊어져도 백그라운드에서 돌아가도록 설정

nohup java -jar 파일이름.jar & 로 실행해준다. 원격을 종료해도 서버는 알아서 돌아가며, 죽이기 위해서는 ps -ef | grep java를 통해 실행중인 자바 프로세스를 kill -9 번호로 서버를 종료할 수 있다.

profile
멋쟁이 토마토

1개의 댓글

comment-user-thumbnail
2023년 12월 22일

잘봤습니다~

답글 달기