본문 바로가기

트러블슈팅

[Vercel] 배포 중 만난 에러와 해결 과정

들어가며

Vercel을 통해 프로젝트를 배포하는 과정에서 예상치 못한 여러 에러를 만났습니다. 로컬에서는 잘 작동하던 프로젝트가 배포 환경에서 문제를 일으키는 경우가 종종 있는데, 이번 글에서는 제가 겪은 문제들과 해결 과정을 공유하고자 합니다.

1. Prisma Type Error

발생한 문제

첫 번째로 만난 에러는 Prisma와 관련된 Type Error였습니다. 로컬 환경에서는 정상적으로 작동했기에 더욱 당황스러웠습니다.

Error: Type error in Prisma Client

원인 분석

Vercel 배포 환경에서는 로컬 환경과 달리 Prisma 관련 명령어를 별도로 실행해줘야 한다는 것을 알게 되었습니다. 이는 배포 환경에서 Prisma Client가 제대로 생성되지 않아서 발생하는 문제였습니다.

해결 방법

npm을 사용하는 프로젝트였기에, 다음 명령어를 실행하여 해결했습니다:

npm prisma generate

2. Build 실패

발생한 문제

Prisma 생성 후에도 빌드가 실패하는 문제가 발생했습니다.

원인 분석

Prisma Client 생성 후 build 과정이 필요했는데, 이를 수행하지 않아 발생한 문제였습니다.

해결 방법

다음 명령어를 순차적으로 실행하여 해결했습니다:

npm prisma generate && npm run build

build setting

3. Routes Manifest 에러

발생한 문제

error: the file "/vercel/path0/.next/routes-manifest.json" couldn't be found. this is often caused by a misconfiguration in your project.

문제 해결을 위한 시도들

  1. 환경 변수 설정 검토
    • env 파일의 문자열 따옴표 사용을 검토
    • 일부 변수는 "abadkd"와 같이 따옴표 포함
    • 다른 변수는 adbdnk와 같이 따옴표 미포함
    • 결론: 환경 변수 형식의 문제는 아니었음
  2. Prisma 버전 확인
    • Prisma 업데이트 여부 확인

배운 점

  1. 배포 환경의 특수성
    • 로컬 환경과 배포 환경의 차이를 이해하는 것이 중요
    • Vercel과 같은 배포 플랫폼에서는 추가적인 설정이 필요할 수 있음
  2. 문제 해결 접근 방식
    • 에러 메시지를 차분히 분석하기
    • 단계적으로 문제 해결하기
    • 공식 문서와 커뮤니티 참고하기

느낀 점

배포 과정에서 발생하는 에러들은 당황스러울 수 있지만, 차근차근 원인을 파악하고 해결해나가는 것이 중요하다고 생각합니다. 특히 Prisma와 같은 도구를 사용할 때는 배포 환경에서의 추가 설정이 필요할 수 있다는 점을 알게 되었습니다. 다음에 Vercel을 통해 배포할 때는 조금 더 유연하게 대처할 수 있을 것 같습니다.

 

 

참고 사이트

https://velog.io/@aborile/Prisma-Vercel-%EC%A0%81%EC%9A%A9

 

Prisma - Vercel 배포 적용

`@vercel/postgres`를 사용했던 프로젝트에서 이런저런 이슈로 AWS RDS로 마이그레이션을 하게 되었는데, 이 과정에서 DB 연결 라이브러리로 prisma를 선택했다. 로컬에서 연동을 마치고 vercel 프리뷰를

velog.io