지난 두 게시글에서 AWS의 EC2 인스턴스와 RDB 인스턴스를 만들었고, MYSQL을 EC2와 프로젝트에 연동하도록 변경해주었다. 이제는 프로젝트를 인스턴스에 올려볼 차례이다.
Java 설치
sudo apt-get update
sudo apt-get install openjdk-11-jdk
필자의 프로젝트는 java 11로 진행했으므로 그에 맞는 버전을 설치해주었다.
Project Build 및 EC2로 복사
IntelliJ를 열어 우측 Gradle에 있는 project name > Tasks > build > build 를 찾아 실행해주면 project의 build > libs 에 jar file이 생기는 것을 확인할 수 있다. 이러면 build가 된 것이다. 이제 이 file을 가지고 EC2 인스턴스에 보내줄 것이다.
scp -r -i 'pem file' 'jar file' ubuntu@(IP Address):/home/ubuntu
우선 build한 파일을 EC2 인스턴스를 생성하면서 다운받았던 pem file이 있는 폴더로 옮기든지 복사를 한다. 'scp' 명령어는 'Secure Copy Protocol'를 줄인 것으로, unix나 linux 두 위치 사이에 파일 혹은 폴더를 안전하게 복사할 수 있도록 한다. 필자는 pem file이 있는 폴더에서 수행했다. 이때 ip address 위치에는 인스턴스의 퍼블릭 IP DNS를 작성해준다.
EC2에서 실행
java -jar 'jar file'
java -jar recipository-0.0.1-SNAPSHOT.jar
EC2 인스턴스에 접근하면 현재 위치인 /home/ubuntu 위치에 원래는 없던 jar file이 생긴 것을 확인할 수 있다. java 명령어를 통해서 jar file을 실행하면 intelliJ에서 봤던 log들을 그대로 볼 수 있어서, 정상적으로 server가 시작된다면 그것으로 테스트는 된 것이다.
마지막으로 퍼블릭 ip를 통해 접근하여 페이지가 정상적으로 뜨는 것까지 확인하였다. 다음은 S3를 활용해서 업로드한 이미지 파일을 저장하고, 그 항목을 불러오도록 프로젝트를 수정할 것이다. 그리고 새롭게 git과 연동해서 프로젝트를 배포해볼 것이다.
이번 게시글도 인스턴스를 생성할 때 참고했던 블로그를 계속해서 참고하였다. 1
Reference
'프로젝트 > Recipository' 카테고리의 다른 글
[Dev] 23.04.05. AWS S3 Bucket으로의 업로드 (with. Access Key) (0) | 2023.04.05 |
---|---|
[Dev] 23.03.31. AWS S3 Bucket 생성 (0) | 2023.03.31 |
[Dev] 23.03.24. AWS RDS 인스턴스 생성 및 연결 (0) | 2023.03.24 |
[Dev] 23.03.23. AWS EC2 인스턴스 생성 및 SSH 접속 (0) | 2023.03.23 |
[Dev] 23.02.27. 댓글 pagination (0) | 2023.02.27 |
댓글