AWS

[SpringBoot & JPA 프로젝트] AWS EC2 / AWS RDS, IAM

sian han 2022. 9. 13. 02:17

4일동안 삽질하다가 드디어 오늘

도메인에 index가  띄워진것을 기념하며 찍은 스크린샷을 첨부합니다

 

 

 


 

 

※ AWS EC2 서버에 도메인 연결해서 JAVA 프로젝트 띄우기

과정은 이렇습니다

 

  • AWS EC2 인스턴스 생성 (+보안그룹 설정)
  • 탄력적 IP 연결
  • SSH 간편하게 접속 설정
  • 키페어 파일 위치 및 권한 변경
  • AWS RDS 인스턴스 생성 (+보안그룹,파라미터그룹 설정)
  • WorkBench 에서 생성된 RDS 접근
  • 도메인 구매 (가비아)
  • AWS Route53 호스팅 영역 및 레코드 생성
  • 가비아 네임서버 설정
  • 도메인에 프로젝트 띄우기 성공

 

하다가 기절할것같아서

local 에서 나만 보고 만족하고 포폴용으로 끝낼까 100번생각했지만

애초에 실제로 서비스를 운영할 계획으로 만든거다보니

꼼꼼하게 만들어서 포폴용으로 끝내기 아쉬웠어요

 

다른 블로그들의 도움을 많이 받은 만큼

저 역시 과정을 세세하게 적어서 어려움을 맞닥뜨린 분들이 참고할 수 있도록 남겨두었어야했는데

도움을 드리지 못해 아쉽습니다

 

구글링 시간을 조금이나 줄여보시라고 . . 

찐 도움 받았던 포스팅 첨부할께요

 

 

 

EC2 ~ RDS 인스턴스 생성까지는 뱀귤선생님의 블로그만 믿고 가심 됩니다

 

AWS 1편: EC2 생성 후 Spring Boot 띄우기 :: 뱀귤 블로그 (tistory.com)

 

AWS 1편: EC2 생성 후 Spring Boot 띄우기

Overview AWS EC2 인스턴스를 생성하고 Spring Boot 서버를 띄워보는 것까지 진행합니다. 주 목표는 서버를 외부에 제공하는 거라서 따로 배포 시스템을 구축하지 않고 단순히 빌드 파일을 복사해서 수

bcp0109.tistory.com

AWS 2편: RDS 생성 후 EC2 와 연동 :: 뱀귤 블로그 (tistory.com)

 

AWS 2편: RDS 생성 후 EC2 와 연동

Overview 지난 포스팅에서는 AWS 에서 EC2 인스턴스를 생성하고 Spring Boot 서버를 띄워 외부에서 요청하는 것까지 해봤습니다. 이번에는 데이터베이스 연동을 위해 RDS 인스턴스를 생성하고 이전에 만

bcp0109.tistory.com

 

 

배포 ~ 도메인 연결에서는 아래 블로그를 참고해주세요

 

AWS에 Spring Boot 프로젝트 배포 2 - EC2 세팅&배포 , 도메인 연결 (velog.io)

 

AWS에 Spring Boot 프로젝트 배포 2 - EC2 세팅&배포 , 도메인 연결

저번 글에서는 AWS RDS를 세팅하고, Spring Boot에MySQL을 연동해봤다.이번 글에서는 AWS EC2에 실제로 프로젝트를 올려서 구동시켜보고 거기에 도메인을 연결해서 보기좋은 하나의 웹사이트로 변신시

velog.io

 

 

 

▶ RDS : Mysql

기존에 MariaDB 로 로컬에서 프로젝트 만들었는데, 

Config 파일 설정해야하는 부분이 있더라구요.

MariaDB로 RDS 연결한 레퍼런스가 없어서 MYSQL 자료 참고해서 Config 파일을 찾아다녔지만

MYSQL과 위치가 다른지 찾아지질 않더라구요 그래서 그냥 Mysql 로 RDS 연결했습니다

 

 


배포에 사용할 jar 파일을 가져와서 EC2 서버에서 실행하는 많은 방법들이 있는데

저는 아래 순서로 진행합니다

 

 

1. build gradle 파일 접근

$ cd C:/Users/user/desktop/proj/knitmarket

 

2. 프로젝트 빌드해서 jar 파일 생성

./gradlew.bat build

 

3. jar 파일 복사

$ scp ./build/libs/knitmarket-0.0.1-SNAPSHOT.jar sh:/home/ubuntu

 

4. ec2 접근

ssh sh

 

5. ec2 인스턴스에서 실행

java -jar knitmarket-0.0.1-SNAPSHOT.jar &

 

 

 

++ 8080 server is already use

 

실행되고있는 프로세스 중에서 java 들어간 것 찾아서

ps -ef | grep java

 

kill

kill -9

 


 

※ 와이파이 변경했는데 ssh Connection timed out 발생 시

EC2 인스턴스 > 보안그룹 > 인바운드 규칙 편집 > 규칙 추가

 

유형 : ssh

소스 : 내 IP

 

위와 같이 설정하여 보안 규칙 추가해주면 다시 SSH 접근 됨