현재 MongoDB를 사용중이니 DB 접속시켜주는 것부터!

접속 가능 IP를 0.0.0.0으로 바꿔 모든 IP에서 접속 가능하도록 바꿔줌
(추후 더욱 안전하게 하고싶은 경우에는 AWS VPC로 mongodb atlas 연결하는 법 같은걸 찾아서 적용)

배포를 위해 node_modules를 제외한 모든 내용을 .zip파일로 압축해줌

AWS 로그인하고 카등등록해줌
해당 부분은 앞전 포스팅 참고.
IAM 역할 만들기 위해
AWS사이트 상단 검색창에 IAM 검색해서 들어가서 좌측에 있는 "역할"클릭

역할 이름에 aws-elasticbeanstalk-ec2-role없으면 "역할 만들기"(역할 생성) 클릭

4-1.
1단계) 신뢰할 수 있는 엔터티는 "AWS 서비스", 사용 사례는 "EC2" 선택

2단계) 권한 추가 메뉴에서
AWSElasticBeanstalkWebTier
AWSElasticBeanstalkWorkerTier
AWSElasticBeanstalkMulticontainerDocker
이렇게 세 가지 찾아서 체크

3단계) 역할 이름 지정 부분은 aws-elasticbeanstalk-ec2-role기입해줌

4-2. 하나 더 만들어줘야함!!!
1단계) 신뢰할 수 있는 엔터티는 "AWS 서비스", 사용 사례는 "Elastic Beanstalk" 선택

2단계) 권한 추가 메뉴에서
AWSElasticBeanstalkEnhancedHealth
AWSElasticBeanstalkService

aws-elasticbeanstalk-service-role 기입해줌
Elastic beanstalk 검색해서 들어가주고,
1단계)
앱이름 원하는대로 작명해넣고,
환경 이름 원하는대로 잘 작명해넣고,
플랫폼은 nodejs 18버전으로했지만 직접 쓰고있는 버전으로 하세용,
프리셋 선택은 '단일 인스턴스'
애플리케이션 코드는 아래 참고

"버전 레이블"은 방금 업로드한 소스코드의 버전 기록용!
2단계) 아래 사진처럼 잘 되어있나 체크하고 넘어가기

안되어있으면.. IAM설정부터 다시 해보자...
3단계) 건드릴 것 없이 다음 클릭
4단계) 인스턴스 유형은 프리티어 사용 되는 t2.micro선택

선택 다 해줬으면 다음으로

구성: 환경 설정 가능
로그: 터미널 로그 출력 가능
상태: 사용하지 않는 인스턴스를 끄거나 재부팅 가능
모니터링: 모니터링 자동으로 해주며 400, 500 같은 에러가 너무 잦거나 접속이 되지 않는 페이지가 있으면 알려줌
- 환경마다 하나의 application을 실행해둘 수 있는데,
application은 프로젝트 버전 1개라고 생각하면 된다.

업로드 및 배포 클릭해서 앞전과 동일하게, 코드 zip파일로 묶어 업로드