Aws

[ec2+rds+ecr] 간단 서버 배포하기

kyoooooong 2025. 12. 7. 20:55

이번에 솝트 합동 세미나를 진행하면서 자연히 배포가 필요한 일이 생겼는데, 이참에 간단하게 배포하는 방법부터 점점 이것저것 적용하는 과정을 남겨두면 좋을 것같아서 글을 써본다~~

 

우선 이번에는 ec2, rds, 그리고 ecr을 이용해서 서버를 배포하는 것에 대해 남겨보려고 한다.

 

 

 

 

1. aws 작업해주기

 

aws에서 필요한 사전 작업들을 해준다. 

간략하게 순서 정도만 정리해보자면

 

aws 사전 작업
인스턴스 생성해주기 -> 탄력적 ip 연결해주기 -> 보안그룹 할당해주기

 

이정도..? 이때 보안그룹은 간단하게 인바운드에서 mysql용 ipv4,v6 이랑 사용자 지정 tcp, http, https 용들을 추가적으로 열어줬다.

 

그리고 rds 생성해서 연결해주고 iam 사용자도 생성해주고 ecr 레포지토리도 만들어주고 ~~ (쓰다보니 좀 너무 간결하네요..)

 

이때 ecr을 선택한 이유는 aws에서 이미지까지 함께 서버에 관한 것들을 관리하고 싶어서 docker hub 대신 ecr로 결정했다! 

 

 

 

 

 

2. 로컬+ec2로 배포

 

다했으면 이제 ec2 서버에 접속해서 배포를 해보자~

 

ssh 접속할 때 터미널에서 할 수도 있고, aws 콘솔에서 할 수도 있지만 우선 난 termius를 쓰는 편!

 

https://programmer-may.tistory.com/212

 

Termius 다운로드 및 실행, EC2 접속

개요원격 데스크톱 어플리케이션으로 MobaXterm 을 잘 사용하고 있었는데, 무중단 배포 실습을 하기 위해서 OS 종속적이지 않아야함으로 바꿔야 했다.Telnet, SSH 접속을 위해 PuTTY나 XShell을 깔고, FTP/S

programmer-may.tistory.com

 

참 편하고 좋아요.. 다들 누리시길

학생계정 꼭 인증하기 ㅋ

 

접속해줬으면 ec2에 깔아야하는 것들을 깔아주자 (aws cli, docker 등등..) 

다 깔았으면 ec2에서 aws configure도 해주면 끝!

 

그리고 로컬에서 기존에 작성해준 dockerfile을 가지고 빌드 해준 다음에 ecr 로그인도 해주고 빌드한 이미지를 푸시하면 끝~

 

이때 작성했었던 dockerfile의 내용은 아래와 같다.

 

FROM eclipse-temurin:21

# Megabox Spring Boot Application JAR
COPY build/libs/*SNAPSHOT.jar megabox-app.jar

# Run Megabox Application
ENTRYPOINT ["java", "-jar", "/megabox-app.jar"]

 

간단간단

 

이때 docker 이미지 빌드시 주의해야할 점은 amd64 용으로 빌드해야된다는 것! (로컬 환경마다 다르긴 하겠지만)

 

 

그리고 이제 남은 건 다시 ec2 서버로 돌아와서 아까 로컬에서 ecr에 푸시한 이미지를 그대로 pull로 가져와서 컨테이너를 실행해주면 끝이다!

 

컨테이너 실행한 후에는 아래 명령어로 로그 한번 확인해주구

 

docker logs -f megabox-server

 

 

간단간단~ 하게 한번 서버를 배포해보았습니다.

 

점점 이것저것 적용해볼 것~~

'Aws' 카테고리의 다른 글

[https+nginx] vercel 배포에 맞춰 https와 nginx 적용해주기  (0) 2025.12.07