본문 바로가기
CICD

[TIL] 240423 AWS - EC2, RDS를 활용하여 배포하기

by studymode 2024. 4. 23.

- AWS에서 제공하는 클라우드 환경의 가상 서버(EC2)로 배포

- Filezilla 이용하여 업로드

 

01.  AWS RDS로 바꾸기

     1. AWS RDS 데이터베이스 생성

         -MySQL

         - 퍼블릭 액세스 기능: "예"

         - 초기 데이터베이스 이름 설정

   

    2. RDS 포트 열어주기

        - 데이터베이스 -> VPC 보안그룹 -> 보안그룹 ID -> 인바운드 규칙 편집

        - 위치 무관으로 생성

 

    3. 스프링부트 MySQL과 연결

       - 엔드포인트 복사 후, 인텔리제이 프로젝트에서 DB연결

            > Name: AWS RDB 설정한 이름

            > Host: 엔드포인트

            > User: 나의 Username

            > Password: 나의 비밀번호

            > Database: db이름

       - application.properties 설정하기

 

 

02.  EC2 구매, 접속

   - OS는 리눅스의 Ubuntu 이용

   - create key pair RSA, .pem으로 키페어 생성

   - SSH: 다른 컴퓨터에서 접속할 때 쓰는 프로그램

   - 접속할 컴퓨터의 22번 포트가 열려있어야함

   - Mac터미널에서 keypair 접근 권한주고 ssh접속

 

 

03.  EC2 준비, 배포

 

    1. 배포 파일 빌드하기

        - 인텔리제이 Gradle > Tasks > build > build

        - build폴더 > libs에 .jar확장자로 끝나는 파일 생기면 빌드 설공

 

    2. Ubuntu에서 OpenJDK설치하기

    3. Filezilla통해서 배포 파일 업로드

        - 사이트매니저에서 new site등록

        - Host: ec2의 ip주소, Port:22, user: ubuntu

        - Logon Type: Key file, Key file> 컴퓨터의 키파일 경로 지정

        - build>libs>jar프로젝트 폴더를 EC2로 드래그 (오른쪽)

       

    4. AWS에서 80, 8080포트 열어주기

            - EC2 Security Group > Edit inbound rules > 8080, 80포트 추가

 

    5. http://내 public 아이피:8080 로 접속

 

04.  포트포워딩 & nohup적용

 

    - 포트포워딩 : 포트번호를 뒤에 입력하지 않아도 자동으로 접속되게 하기 위해 80포트로 오는 요청을 8080포트로 전달

    - nohup : ssh접속을 끊어도 서버가 돌게 하기 (현재는 맥 터미널 종료하면 서버도 종료됨)

    -  nohup java -jar JAR파일명.jar & 로 nohup 설정

 

배포 과정 요약
01. 데이터베이스 AWS RDS로 바꾸기
02. EC2 구매, 접속
03. 배포 파일 빌드 후, 파일질라로 배포파일 업로드
04. 포트포워딩, nohup 적용

 

 

나의 첫 배포 성공😆 🎉