AWS Ubuntu 22.04에서 Next.js 시스템 설정

aws-ubuntu-2204-nextjs

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
      

Next.js 설치

  • Next.js를 위한 프로젝트 디렉토리를 생성하고, Next.js를 설치합니다:
  • 
    npx create-next-app@latest my-nextjs-app
    cd my-nextjs-app
      

Next.js 애플리케이션 실행

  • Next.js 개발 서버를 실행하려면 아래 명령어를 입력합니다:
  • npm run dev
  • 브라우저에서 http://localhost:3000으로 접속합니다.

Next.js 빌드 및 배포

  • Next.js를 정적으로 빌드하려면:
  • npm run build
  • 빌드가 완료되면 Next.js를 배포 모드로 실행할 수 있습니다:
  • npm start

Nginx 설치

  • Ubuntu에 Nginx를 설치하려면 다음 명령어를 사용합니다:
  • 
    sudo apt update
    sudo apt install nginx
      

Nginx 설정 파일 수정

  • Nginx를 사용해 Next.js 애플리케이션을 서비스하려면 설정 파일을 수정합니다:
  • 
    sudo nano /etc/nginx/sites-available/default
      
  • 다음과 같이 Nginx 설정을 추가합니다:
  • 
    server {
        listen 80;
        server_name yourdomain.com;
    
        location / {
            proxy_pass http://localhost:3000;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host $host;
            proxy_cache_bypass $http_upgrade;
        }
    }
      
  • Nginx 설정을 저장하고 Nginx를 재시작합니다:
  • sudo systemctl restart nginx

도메인 및 HTTPS 설정

  • Let’s Encrypt를 사용하여 무료 SSL 인증서를 설치하려면 다음 명령어를 사용합니다:
  • 
    sudo apt install certbot python3-certbot-nginx
    sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
      
  • 인증서가 성공적으로 설치되면 HTTPS가 활성화됩니다.