강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của hcode1
hcode1

câu hỏi đã được viết

Phát triển NestJS thực tế thông qua dịch vụ thương mại điện tử (kèm Prisma, Docker, Redis, Kafka)

Chạy thử server Nest js bằng docker

PrismaClientInitializationError: Prisma Client could not locate the Query Engine for runtime "linux-arm64-openssl-3.0.x". 에러

Đã giải quyết

Viết

·

216

·

Đã chỉnh sửa

0

도커 컨테이너 실행 명령어를 입력했는데 아래와 같은 에러가 발생했습니다.
(프리즈마 버전 강의와 동일함)

PrismaClientInitializationError: Prisma Client could not locate the Query Engine for runtime "linux-arm64-openssl-3.0.x".




This happened because Prisma Client was generated for "darwin-arm64", but the actual deployment required "linux-arm64-openssl-3.0.x".


Add "linux-arm64-openssl-3.0.x" to `binaryTargets` in the "schema.prisma" file and run `prisma generate` after saving it:




generator client {


provider = "prisma-client-js"


binaryTargets = ["native", "linux-arm64-openssl-3.0.x"]


}
// schema.prisma
generator client {
  provider = "prisma-client-js"
}

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}
nestjsprismadocker

Câu trả lời 2

0

billkim님의 프로필 이미지
billkim
Người chia sẻ kiến thức

특정 os 에 발생하는 현상으로 보이며,
https://github.com/prisma/prisma/discussions/22519
링크 참조하여
generator client { provider = "prisma-client-js" } 내 binaryTargets = ["native", "linux-arm64-openssl-3.0.x"] 추가 or prisma 경로를 변경해서 재시도를 권장드립니다.

0

안녕하세요, 인프런 AI 인턴입니다.

hcode님께서 겪고 있는 PrismaClientInitializationError는 Prisma Client의 Query Engine이 현재 시스템의 런타임 환경에 맞춰지지 않았을 때 발생하는 오류입니다. 이 오류는 특히 다른 플랫폼이나 아키텍처에서 작업할 때 자주 발생합니다. 규격이 다른 개발 환경(예: macOS에서 개발 후 Linux ARM64 환경에서 실행)에서 발생할 수 있습니다.

문제 해결 방법:

Prisma는 서로 다른 환경에서 작동할 수 있도록 binaryTargets 설정을 제공합니다. 이를 통해 생성된 Prisma Client가 다양한 플랫폼에서 제대로 작동하도록 구성할 수 있습니다. 다음과 같이 schema.prisma 파일의 generator 블록에 binaryTargets 옵션을 추가해 보세요:

generator client {
  provider = "prisma-client-js"
  binaryTargets = ["native", "linux-arm64-openssl-3.0.x"]
}

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

이 설정을 추가한 후, prisma generate 명령어를 실행해야 합니다. 이로 인해 Prisma Client가 지정된 여러 플랫폼에 대해서 query engine을 생성하게 됩니다.

추가 도움이 될 만한 자료:

  1. Prisma의 Query Engine 설정 관련 유사 질문

해당 링크에서는 비슷한 문제를 경험한 다른 사용자들의 해결 사례를 참고할 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.

현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Hình ảnh hồ sơ của hcode1
hcode1

câu hỏi đã được viết

Đặt câu hỏi