AWS Ubuntu 22.04에서 Gatsby 시스템 설정

aws-ubuntu-gatsby-setup

이 글에서는 가장 많은 분들이 처음 시작하실 때 사용되는 환경 aws t2.micro 인스턴스 + ubuntu 22.04 LTS + nginx +gatsby 조합을 간략하지만 반드시 꼭 필요한 환경 설정을 다룹니다. 아무래도 처음부터 과금을 원하시지는 않으실 테고 aws 12개월 무료 기간 안에서 사용한다고 강력하게 믿고 있습니다. ssl도 let’s encrypt는 국룰이죠. 저도 그렇게 시작했고 많은 분들이 그렇게 시작한 환경을 보고 따라한 것이니까요.

시작했으면 끝을 보세요. 세팅에 너무 기운을 쏟아버린 채 실제로 개발을 “hello world”만 찍어보고 포기하지 마세요.

자 그럼 시작하겠습니다. 이 한 걸음이 구글이나 마이크로소프트가 당신의 회사를 통째로 인수하겠다고 매달리는 그날까지 이어지길 바랍니다.

AWS EC2 인스턴스 생성

  • Amazon Web Services (AWS) 콘솔에 로그인합니다.
  • EC2 대시보드에서 인스턴스 시작을 클릭합니다.
  • Ubuntu 22.04 LTS를 선택한 후, t2.micro 인스턴스를 선택합니다.
  • 기본 설정대로 인스턴스를 구성하고, 보안 그룹에서 HTTP, HTTPS, SSH 포트를 열어줍니다.

SSH로 EC2 인스턴스 접속

    • 로컬 컴퓨터에서 터미널을 열고, 다음 명령어로 EC2 인스턴스에 접속합니다.
ssh -i "your-key.pem" [email protected]

Node.js 설치

    • 다음 명령어로 Node.js와 npm을 설치합니다:

sudo apt update
sudo apt install nodejs
sudo apt install npm
  

Gatsby CLI 설치

    • Gatsby CLI를 전역으로 설치하려면, 다음 명령어를 사용합니다:
npm install -g gatsby-cli

Gatsby 프로젝트 생성

    • 프로젝트를 생성하려면, 다음 명령어를 입력합니다:
gatsby new my-gatsby-site
    • 프로젝트 디렉토리로 이동합니다:
cd my-gatsby-site

Gatsby 개발 서버 실행

    • 개발 서버를 실행하고 웹사이트를 미리 보려면:
gatsby develop
  • 브라우저에서 http://localhost:8000로 접속합니다.

Gatsby 사이트 빌드

    • 정적 파일로 사이트를 빌드하려면, 다음 명령어를 실행합니다:
gatsby build

Nginx 설치 및 설정

    • Ubuntu에 Nginx를 설치하려면, 다음 명령어를 실행합니다:

sudo apt update
sudo apt install nginx
  

Nginx 설정 파일 수정

    • Gatsby 사이트를 서빙할 수 있도록 Nginx 설정 파일을 수정합니다:

sudo nano /etc/nginx/sites-available/default
  
    • 아래 내용을 추가하고, root 디렉토리를 Gatsby 빌드 경로로 설정합니다:

server {
    listen 80;
    server_name yourdomain.com;

    root /path/to/your-gatsby-site/public;
    index index.html;

    location / {
        try_files $uri /index.html;
    }
}
  
    • Nginx 설정을 저장하고, 서버를 재시작합니다:
sudo systemctl restart nginx

도메인 및 HTTPS 설정

    • Let’s Encrypt를 사용하여 무료 SSL 인증서를 설치하려면, certbot을 사용합니다:

sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
  
  • 인증서가 설치된 후, HTTPS를 통해 안전한 연결이 활성화됩니다.