Next.js standalone 적용으로 배포 시간 3배 단축!

by DD
2년 전
조회수 10

Next.js standalone 옵션 적용으로 Docker image 사이즈 80% 감소

Docker image 사이즈 감소를 통해 배포 시간 320% 향상 달성

환경 변수 문제 해결을 위해 쉘 스크립트를 활용하여 빌드 환경 개선

Standalone 아키텍처의 이해

Next.js standalone은 웹 애플리케이션 실행에 필요한 최소한의 파일만 추출한다. 구체적으로 빌드 결과물에서 불필요한 코드를 제거하여 Docker image 사이즈 감소를 가능하게 한다. 따라서 배포 시간 단축자원 효율성을 확보한다.

환경 변수 관리의 핵심

Standalone 적용 시 환경 변수가 제대로 로드되지 않는 문제가 발생할 수 있다. 쉘 스크립트를 활용하여 빌드 시점에 환경 변수를 주입함으로써 문제를 해결했다. 반면, .env 파일의 위치와 빌드 스크립트 설정을 신중하게 관리해야 한다.

배포 파이프라인 최적화 전략

Docker image 사이즈 감소ECR push/pull 시간 단축으로 이어진다. 따라서 Jenkins CI/CD 파이프라인을 통해 배포 시간을 획기적으로 개선했다. 결과적으로 배포 시간 320% 향상이라는 놀라운 성과를 달성했다.

랠릿 standalone 적용기