Next.js와 모듈 번들러

정은경·2024년 5월 18일
0

👸 Front-End Queen

목록 보기
268/278

Next.js는 자체적으로 모듈 번들러를 포함하고 있어, 추가적인 설정 없이도 자바스크립트와 기타 자산을 번들링할 수 있습니다. Next.js는 내부적으로 웹팩(Webpack)을 사용하여 빌드와 번들링을 처리합니다. 따라서 Next.js를 사용하여 프론트엔드 페이지를 개발할 때 별도로 모듈 번들러를 설정할 필요는 없습니다.

Next.js에서의 번들링과 배포

Next.js는 개발 환경과 프로덕션 환경 모두에서 번들링을 처리하는 기능을 제공합니다. Next.js 프로젝트를 배포할 때 수행되는 기본 과정은 다음과 같습니다:

  1. 개발 환경: next dev 명령어를 사용하여 개발 서버를 실행합니다. 개발 중에는 실시간 코드 변경을 반영하기 위해 핫 리로딩이 지원됩니다.

    npm run dev
    # 또는
    yarn dev
  2. 프로덕션 빌드: next build 명령어를 사용하여 프로덕션용 빌드를 생성합니다. 이 과정에서 모든 페이지와 자산이 최적화되고 번들링됩니다.

    npm run build
    # 또는
    yarn build
  3. 서버 시작: next start 명령어를 사용하여 프로덕션 서버를 시작합니다. 이 명령어는 next build로 생성된 최적화된 번들을 사용합니다.

    npm run start
    # 또는
    yarn start

배포 옵션

Next.js를 배포할 때는 여러 가지 옵션이 있습니다. Next.js는 정적 사이트 생성(Static Site Generation, SSG)과 서버 사이드 렌더링(Server-Side Rendering, SSR)을 모두 지원하므로, 요구사항에 맞게 다양한 배포 전략을 사용할 수 있습니다.

1. Vercel

Vercel은 Next.js의 제작사에서 제공하는 호스팅 플랫폼으로, Next.js 애플리케이션을 쉽게 배포할 수 있는 기능을 제공합니다.

  • 자동 배포: GitHub, GitLab, Bitbucket 등의 리포지토리에 푸시하면 자동으로 배포됩니다.
  • 서버리스 기능: API 라우트와 서버리스 함수 배포를 지원합니다.

2. 기타 호스팅 플랫폼

AWS, Google Cloud, Azure, DigitalOcean 등에서도 Next.js 애플리케이션을 배포할 수 있습니다. 이 경우에는 빌드 후 생성된 정적 파일과 서버 사이드 렌더링을 위한 서버 설정이 필요합니다.

3. 정적 사이트 호스팅

Next.js의 next export 명령어를 사용하여 완전한 정적 사이트로 내보낼 수 있습니다. 이 방식은 서버 사이드 렌더링 기능이 필요 없는 경우에 유용합니다.

npm run export
# 또는
yarn export

결론

Next.js를 사용하면 별도의 자바스크립트 모듈 번들러를 설정할 필요 없이, Next.js가 제공하는 빌드 및 번들링 기능을 활용하여 애플리케이션을 개발하고 배포할 수 있습니다. Next.js는 내부적으로 웹팩을 사용하여 모든 번들링 작업을 처리하므로, 추가적인 번들러 설정 없이도 최적화된 애플리케이션을 쉽게 배포할 수 있습니다.

profile
#의식의흐름 #순간순간 #생각의스냅샷

0개의 댓글