Amazon EC2와 Nginx를 사용한 웹 페이지 배포

발행: (2026년 5월 3일 AM 07:25 GMT+9)
7 분 소요
원문: Dev.to

Source: Dev.to

Source:

Amazon EC2 인스턴스 생성 및 배포

클라우드 서버가 어떻게 작동하는지, 물리적인 서버 없이도 자신의 웹 페이지를 인터넷에 게시할 수 있는 방법이 궁금하셨나요?

이 실습에서는 Amazon EC2에서 인스턴스를 생성하는 과정을 단계별로 안내하고, 필요한 설정을 명확히 설명하여 복잡함 없이 진행할 수 있도록 도와드립니다. 또한 이론에 머무르지 않고 Nginx를 사용해 실제 웹 사이트를 배포하고, 직접 만든 콘텐츠로 맞춤화하여 어디서든 접근할 수 있게 합니다.

단계 1 – Amazon EC2 접속

  1. AWS 콘솔에서 검색창에 **“EC2”**를 입력합니다.
  2. 서비스 EC2를 클릭하여 메인 패널에 들어갑니다.
  3. 주황색 버튼 “Launch instance” (인스턴스 시작)를 눌러 생성 과정을 시작합니다.

단계 2 – 인스턴스 초기 설정

요소설명
이름laboratorio-ec2 (식별하기 쉬운 이름)
AMIAmazon Linux (AWS에 최적화된 가볍고 널리 사용되는 이미지)
인스턴스 유형t3.micro – 기본·저렴한 옵션이며 Free Tier에 포함, 작은 프로젝트와 테스트에 충분합니다

단계 3 – 키 페어 생성

  1. 키 페어에 쉽게 식별할 수 있는 이름을 지정합니다.
  2. RSA를 키 유형으로 선택합니다 (표준·안전한 SSH 알고리즘).
  3. .pem 형식을 선택합니다 (Linux, macOS 또는 Windows의 Git Bash에 적합).

중요 팁: .pem 파일을 안전한 곳에 다운로드·보관하세요. 분실하면 인스턴스에 접속할 수 없습니다.

참고: 이 실습에서는 EC2 Instance Connect(브라우저 기반 접속)를 사용했지만, 실제 환경에서는 .pem 키가 필수입니다.

단계 4 – 네트워크 설정 (Security Group)

포트프로토콜설명
22TCPSSH – 인스턴스에 원격으로 접속할 수 있게 함
80TCPHTTP – 배포한 웹 페이지를 확인하는 데 필요

이 규칙들은 들어오는 트래픽을 제어하는 방화벽 역할을 합니다.

단계 5 – 인스턴스 연결

  1. 인스턴스 패널에서 방금 만든 인스턴스를 선택합니다.
  2. “Connect” (연결) 버튼을 클릭합니다.
  3. EC2 Instance Connect 섹션에서 “Connect” 를 눌러 브라우저 터미널을 엽니다.

단계 6 – 시스템 업데이트 및 Nginx 설치

# 시스템 패키지 업데이트
sudo dnf update -y

# Nginx 설치
sudo dnf install nginx -y

단계 7 – Nginx 시작 및 자동 실행 설정

# 서비스 시작
sudo systemctl start nginx

# 인스턴스 재부팅 시 자동 시작하도록 설정
sudo systemctl enable nginx

단계 8 – 퍼블릭 IP 주소 확인

  1. 인스턴스 패널에서 생성한 인스턴스를 선택합니다.
  2. 상세 정보 섹션에서 “Public IPv4 address” 필드를 찾습니다.
  3. 해당 주소를 복사합니다. 이 주소가 브라우저에서 웹 사이트에 접근할 URL이 됩니다.

단계 9 – 웹 페이지 수정

# Nginx가 파일을 제공하는 디렉터리로 이동
cd /usr/share/nginx/html

# nano로 index.html 편집 (다른 편집기 사용 가능)
sudo nano index.html

index.html 파일은 브라우저에 표시되는 내용을 담고 있습니다. 기존 파일을 삭제하거나 자신의 HTML 코드로 교체합니다.

단계 10 – 웹 페이지 편집 및 저장

  1. index.html의 기존 내용을 모두 삭제합니다.
  2. 자신의 웹 사이트 HTML 코드를 붙여넣습니다.
  3. 변경 사항을 저장합니다 (nano에서는 Ctrl+O) 그리고 편집기를 종료합니다 (Ctrl+X).

이제 퍼블릭 IP 주소를 브라우저에 입력해 새로 만든 페이지가 표시되는지 확인합니다.

완료! EC2 인스턴스를 생성·설정하고 Nginx를 실행하여 웹 사이트를 배포했습니다.

ropio 웹사이트를 어디서든 접근할 수 있게 만들었습니다. 🎉

nano로 변경 사항 저장

  1. Ctrl + X를 눌러 종료하고 변경 사항을 저장합니다.

11단계: 웹 페이지 보기

우리 작업 결과를 확인하려면 Amazon EC2 인스턴스의 퍼블릭 IP 주소를 다시 사용합니다.

  1. 웹 브라우저를 엽니다.
  2. 다음 URL을 입력합니다 (TU_IP_PUBLICA를 인스턴스의 실제 IP로 교체):
http://TU_IP_PUBLICA
  1. 브라우저에 수정된 웹 페이지가 표시됩니다.

실험 학습

  • EC2 인스턴스: Amazon EC2에서 인스턴스를 시작하고 구성하는 단계별 안내.
  • 원격 연결: EC2 Instance Connect를 사용하여 원격으로 연결.
  • 웹 서버: Nginx를 사용한 작동하는 웹 서버 배포.
  • Security Groups: SSHHTTP를 통한 접근을 제어하기 위한 보안 그룹의 중요성 이해.
  • 공인 IP: 공인 IP가 웹 페이지를 인터넷에서 접근 가능하게 하는 방식 이해.

전반적으로 이 실습은 이론과 실습을 연결하고 클라우드에 애플리케이션을 배포하는 방법을 이해하는 데 유용했습니다.

0 조회
Back to Blog

관련 글

더 보기 »