Search

[따배시] 따라하면서 배우는 시최의 AWS 프리티어로 프로젝트 배포하기

글감
AWS
Infra
작성자
최시원
최시원
작성 일자
2023/11/13 08:44
상태
완료
공개여부
공개
Date
2023/11/13
생성자
최시원
최시원
작업자
최시원
최시원

개요

배포, 인프라, CI/CD 라고 하면 막연하고 어려운 것이라고 생각하고 주저하고 있는 팀원들이 많은 것 같아 이 글을 적게 되었어요.
이 글만 보면서 따라 하면 누구나 AWS 프리티어로 커버가 가능한 인프라를 구축하여 배포하고, CI/CD 파이프라인을 적용할 수 있도록 하는 것을 목표로 해요.
국내에서 가장 많이 사용하는 React와 Spring Boot 프로젝트를 기준으로 설명하려고 해요.
사용되는 프레임워크에 대한 개념 소개보다는 프로젝트를 AWS에 배포하는 방법사용할 AWS 서비스에 대한 소개에 초점이 맞춰져있다는 점 유념 바랄게요.
여기서 나오는 개념이 이해 안 되시더라도 괜찮아요. 일단 전체 과정을 다 경험해 보는 것이 이번 실습의 목표니까요!

시스템 구조도

AWS 계정 생성

IAM 액세스 키 발급

프리티어 한도 확인

 AWS 과금 방지를 위한 조치 - 매우 중요!!

Boilerplate 프로젝트 clone 및 실행

S3 + CloudFront에 React 프로젝트 배포하기

RDS 인스턴스 및 DDL 생성

EC2에 Spring Boot 서버 배포하기

배포된 사이트 접속하기

Application Load Balancer(ALB) 생성 및 EC2 연동 (선택)

도메인 구매 및 ACM 인증서 발급하기 (선택)

ALB에 인증서 및 HTTPS 통신 적용 (선택)

Github Actions Secret 수정 (선택)

최종 결과물 확인 (선택)

 생성한 인스턴스 삭제 - 매우 중요!!

마치며

여기까지 쭉 진행하셨다면 정말 고생하셨다는 말씀드리고 싶네요..!
긴 실습 너무 고생 많으셨어요. 🥹
이렇게 AWS 프리티어를 이용해서 React와 Spring Boot 프로젝트를 연동하고 배포까지 자동화로 진행해 봤어요.
도메인 적용, ACM 인증서 발급부터 HTTPS 통신까지, 모든 과정을 해보았네요.
AWS나 DevOps, 인프라에 대해 잘 모르시더라도, 제 글을 따라 하시면 충분히 진행하실 수 있었을 거예요.
물론 제 지식이나 설명이 한계가 있어서, 이해가 안 가는 부분이나 왜 이걸 해야 하는지 의문이 드는 부분이 있을 수 있어요.
그래도 괜찮아요, 중요한 건 일단 어쨌든 전체 배포 과정을 경험해 보았다는 것이니까요!
그럼에도 진행하다가 궁금한 점이나 막히는 부분이 생기면 언제든지 댓글이나 @최시원 에게 연락주세요.
최대한 도와드릴게요!