1) EC2 Instance 생성
Instance 라는 이름으로 부릅니다.AWS Console 페이지로 이동
만약 로그인을 하지 않았다면 로그인을 한 뒤 아래와 같은 페이지가 나오도록 해주세요!

Region 선택
우리가 앞으로 만들 EC2 Instance가 어떤 지역에서 켜질지 선택할 수 있습니다.
이 지역이 가까울수록 접속 속도가 빠르니 우리는 서울(ap-northeast-2)을 선택합니다!

EC2 Instance 생성: EC2 서비스 페이지로 이동

상단 검색창에서 EC2 를 입력해 서비스 부분의 맨 위에 나온것을 누릅니다.
아래처럼 나오면 성공!

EC2 Instance 생성: 운영체제 선택
왼쪽 메뉴에서 “인스턴스” 를 눌러 아래 페이지로 이동합니다.

우측 상단에 있는 주황색 “인스턴스 시작” 버튼을 눌러 아래 페이지로 이동합니다.


“애플리케이션 및 OS 이미지”에서 Ubuntu를 선택하고, Ubuntu Server 22.04 LTS(HVM)을 선택합니다. (아키텍처는 64비트(x86)으로 지정해주세요.)

EC2 Instance 생성: 인스턴스 유형 선택
“프리 티어 사용 가능” 이라고 적혀있는 t2.micro 타입을 선택합니다.

EC2 Instance 생성: 키 페어(keypair) 이름 지정 및 다운로드
EC2 Instance 생성: EC2 Instance 시작
2) EC2 Instance 종료하는 방법
대상 인스턴스에 마우스 우클릭 > 인스턴스 중지 또는 종료 중 하나를 클릭하면 명령을 실행합니다.
3) EC2 Instance에 접속하기
방화벽이란?
📌 방화벽은 여러분의 컴퓨터에 아무나 연결할 수 없도록 해주는 역할을 수행합니다.
EC2 Instance에 접속하기 위한 도구, SSH 개념 정리
AWS EC2에 접속하기
macOS: Mac은 ssh가 기본 설치되어 있어, 명령어로 바로 접근 가능!
터미널을 열기 (⌘ + Space로 Spotlight 에서 터미널 입력)

EC2 Instance를 생성하면서, 다운로드 받은 키 페어의 접근 권한을 바꿔줘야합니다.
# 다운로드 폴더로 접근합니다.
cd Download
# sparta_keypair.pem 파일의 권한을 읽기만 가능하도록 수정합니다.
sudo chmod 400 sparta_keypair.pem
SSH로 접속하기
ssh -i 받은키페어를끌어다놓기 ubuntu@AWS에적힌내아이피
예) 아래와 비슷한 생김새!
ssh -i sparta_keypair.pem ubuntu@13.125.253.21
Windows: ssh가 없으므로, git bash라는 프로그램을 이용!
4) 간단한 리눅스 명령어 연습하기
sudo apt-get install -y nodejs
설치 및 설치 확인 명령어
설치: EC2 Instance에 접속이 된 상태라면 위에서 복사한 명령어를 붙여넣고 엔터를 누르고 기다리면 됩니다.
설치 확인: 이전에 아래와 같은 명령어로 확인했던것처럼 확인할 수 있습니다!
node -v
npm -v
04. 서버 프로그램 실행 및 웹사이트 접속
1) EC2 Instance에서 서버 실행
GitHub에 있는 Repository Clone
Github의 원격 저장소로 부터 코드를 가져오는것이 Clone이라고 이해할 수 있습니다.
이전 수업에서 만든 GitHub 레파지토리 페이지로 들어가 초록색 “Code” 버튼을 눌러 네모가 두개 겹친 모양의 아이콘을 가진 복사 버튼을 눌러주세요.

EC2 Instance 터미널에 접속해 복사한 내용을 붙여 넣어주세요.
아래와 같은 형식으로 나타나야 합니다.
- ⚠️ 아래는 예시이므로 복사해서 사용하시면 안됩니다!
```bash
# 원격 저장소로 부터 코드 가져오기
git clone <Github Repository URL>
# 예시
git clone https://github.com/archepro84/nodejs-todo-list.git
```
프로젝트 실행
👉 프로젝트 실행 순서
cd nodejs-todo-list : 원격 저장소로부터 가져온 프로젝트로 이동합니다.sudo npm install -g yarn : yarn을 사용하기 위해, 전역으로 yarn을 설치합니다.yarn : 원격 저장소로 부터 가져온 프로젝트의 의존성 및 패키지를 설치합니다.node app.js : 프로젝트를 실행합니다.웹 사이트 접속