Next.js 애플리케이션의 Vercel을 통한 배포: 배포 과정과 설정에 대한 심층 분석.
Next.js 애플리케이션의 Vercel을 통한 배포: 배포 과정과 설정에 대한 심층 분석
소개
Next.js는 React 기반의 프레임워크로, 서버 사이드 렌더링(SSR)과 정적 사이트 생성(SSG) 등 다양한 기능을 제공합니다. Vercel은 Next.js의 창시자들이 만든 배포 플랫폼으로, Next.js 애플리케이션이 최적화된 환경에서 배포될 수 있도록 설계되었습니다. 이 글에서는 Next.js 애플리케이션을 Vercel을 통해 배포하는 과정과 각종 필수 설정에 대해 심층적으로 분석하겠습니다.
Vercel 계정 생성 및 프로젝트 설정
가장 먼저, Vercel에 가입하고 계정을 생성해야 합니다. Vercel은 GitHub, GitLab, Bitbucket과 연동하여 프로젝트를 쉽게 관리할 수 있도록 도와줍니다.
vercel.com
에 접속하여 가입합니다.- GitHub, GitLab 또는 Bitbucket 계정을 연결합니다.
- 신규 프로젝트를 생성합니다. GitHub, GitLab, Bitbucket 저장소를 선택하여 프로젝트를 가져옵니다.
계정 생성 후, 프로젝트를 설정하는 과정에서 환경 변수 설정, 빌드 및 배포 설정을 완료해야 합니다. 이는 다음 섹션에서 자세히 다루겠습니다.
환경 변수 설정
Next.js 애플리케이션은 종종 외부 API 키, 데이터베이스 접속 정보 등 다양한 환경 변수를 필요로 합니다. Vercel에서는 이러한 환경 변수를 쉽게 설정할 수 있는 기능을 제공합니다.
- Vercel 대시보드에서 프로젝트를 선택합니다.
Settings
탭을 클릭하고,Environment Variables
섹션으로 이동합니다.- 각 환경 변수를 키-값 쌍으로 추가합니다.
애플리케이션 코드에서는 다음과 같이 환경 변수를 가져올 수 있습니다.
javascriptconst apiKey = process.env.NEXT_PUBLIC_API_KEY;
NEXT_PUBLIC_
프리픽스를 사용하면 브라우저에서도 해당 변수를 접근할 수 있습니다.
연속적인 배포 설정
Vercel은 연속적 통합(Continuous Integration, CI) 및 연속적 배포(Continuous Deployment, CD)를 지원합니다. 이를 통해 코드 변경 시 자동으로 배포가 이루어지도록 설정할 수 있습니다.
- Vercel 대시보드에서 프로젝트를 선택합니다.
Deployments
탭으로 이동합니다.- 브랜치 설정에서 'Production'과 'Preview' 브랜치를 지정합니다.
이후 저장소에서 해당 브랜치에 푸시(push)할 때마다 Vercel이 자동으로 애플리케이션을 배포합니다. Production 브랜치 변경 시 라이브 사이트가 업데이트되고, Preview 브랜치 변경 시 미리보기 버전이 업데이트됩니다.
최적화 및 사용자 정의 설정
Vercel은 기본 설정 외에도 다양한 최적화 및 사용자 정의 설정을 지원합니다.
빌드와 배포 스크립트
Next.js의 기본 빌드 및 배포 스크립트는 next build
와 next start
입니다. Vercel 설정에서 이러한 스크립트를 사용자 정의할 수 있습니다.
package.json
파일을 열어 특정 배포 요구사항에 맞게 스크립트를 수정합니다.
json{