Deploy Nextjs Standalone with Lambda & Express




• Next.js의 Standalone 기능을 활용하여 애플리케이션을 배포하는 방법을 설명하였다. Standalone 옵션은 Next.js의 빌드 아티팩트를 독립적인 모듈로 만들어주어, 마이그레이션 등에 유용하게 사용된다.
• Standalone의 구조를 살펴보면, 빌드된 결과물 중 `./.next/standalone`과 `./.next/static`의 내용과 `/public`의 내용이 빌드 아티팩트가 되며, `node server.js` 명령어를 통해 실행된다. 이때, `./next/standalone` 내에 있는 server.js 파일이 진입점이 된다.
• server.js는 .next의 실행 파일들을 기반으로 애플리케이션을 구동시키는 진입점이며, next/server 패키지 내에 있는 start-server 메서드를 사용한다. 이를 통해 standalone 파일과 관련 설정들이 있다면 언제든 함수를 실행할 수 있다.
• Next.js를 Lambda에서 실행하려는 목적으로, 동일한 node.js 기반의 nest.js를 Lambda에 배포하는 코드를 참고하였다. Nest.js는 빌드 시 코드를 express 혹은 fastify 기반으로 트랜스파일링하여 실행한다.

북마크
공유하기
신고하기