바이브코딩 · 검수된 답변

바이브코딩 Render 배포 오류 해결법: build 실패부터 start command까지

바이브코딩으로 만든 웹이 Render에서 실패할 때는 build command, start command, 환경변수, Prisma generate, migration 로그를 순서대로 확인해야 합니다.

바이브코딩 Render 배포 오류 해결법: build 실패부터 start command까지

바이브코딩으로 웹 화면을 만드는 것과 Render에서 실제 서비스로 띄우는 것은 다른 단계입니다. 로컬에서는 잘 보이던 Next.js 앱도 Render 배포에서는 build command, start command, 환경변수, DB migration 때문에 실패할 수 있습니다.

이 글은 바이브코딩 웹 배포 메인 가이드의 보조 문서입니다. 전체 흐름은 메인 글에서 보고, 여기서는 Render 배포 오류만 좁혀서 봅니다.

1. Render 배포 오류는 로그부터 봅니다

Render에서 배포가 실패하면 먼저 Deploy Logs를 열어야 합니다. 에러 메시지를 보지 않고 설정을 계속 바꾸면 원인을 놓치기 쉽습니다.

확인할 로그 위치:

Render Dashboard
→ Web Service
→ Deploys
→ 실패한 Deploy 클릭
→ Logs 확인

자주 나오는 유형은 다음과 같습니다.

2. Build Command와 Start Command를 분리합니다

Next.js + Prisma 프로젝트라면 Render의 Build Command는 보통 아래처럼 둡니다.

npm install && npm run build && npm run db:deploy

Start Command는 다음처럼 둡니다.

npm run start

중요한 점은 운영 배포에서는 prisma migrate dev가 아니라 prisma migrate deploy를 써야 한다는 것입니다. 개발 명령을 운영에서 쓰면 입력 대기나 shadow database 문제로 막힐 수 있습니다.

관련 DB 연결 과정은 Supabase DATABASE_URL 연결 오류 해결법에서 따로 정리했습니다.

3. 환경변수가 없으면 build는 되더라도 런타임에서 죽을 수 있습니다

Render Environment Variables에 최소한 아래 값이 있어야 합니다.

DATABASE_URL=...
NEXT_PUBLIC_SITE_URL=https://내도메인
AUTH_SECRET=...
ADMIN_EMAIL=...
ADMIN_PASSWORD=...

OpenAI API Key 같은 선택 Provider는 없어도 기본 앱이 살아 있어야 합니다. 다만 AI 생성 기능을 쓰려면 OPENAI_API_KEY를 별도로 넣어야 합니다.

API Key를 안전하게 넣는 방식은 OpenAI API Key 환경변수 설정 방법에서 이어서 보면 됩니다.

4. Prisma generate 오류 확인

Render 로그에 Prisma 관련 오류가 나오면 먼저 package script를 확인합니다.

{
  "build": "prisma generate && next build",
  "db:deploy": "prisma migrate deploy"
}

Prisma Client가 생성되지 않으면 Next.js build 과정에서 import 오류가 날 수 있습니다. npm run build 안에 prisma generate가 포함되어 있으면 운영 배포에서 안정적입니다.

5. start command 오류 확인

Next.js 운영 서버는 보통 아래 명령으로 실행합니다.

npm run start

그리고 package.json에는 아래처럼 있어야 합니다.

{
  "start": "next start"
}

Render는 PORT 환경변수를 자동으로 제공합니다. Next.js는 보통 이 값을 알아서 사용하므로 직접 포트를 하드코딩하지 않는 편이 안전합니다.

6. 배포 성공 후 확인할 것

배포가 live 상태가 되면 실제 URL에서 확인합니다.

Invoke-WebRequest -Uri "https://infofixhub.org" -UseBasicParsing
Invoke-WebRequest -Uri "https://infofixhub.org/api/health/db" -UseBasicParsing

확인 기준:

최종 체크리스트

Render 배포 문제가 해결되면 다시 바이브코딩 웹 배포 전체 과정으로 돌아가 도메인, DB, API, Google Search Console 색인까지 이어서 점검하면 됩니다.