최근 앱을 프로덕션에 배포하는 동안 다음 오류가 발생했습니다.
Error: Could not parse schema engine response: SyntaxError: Unexpected token E in JSON at position 0
이런 일이 발생한 이유에 대해서는 더 이상 설명이 없습니다. 단지 이 줄뿐입니다. 최근 병합 커밋에서는 로케일 키워드 몇 개만 변경했습니다.
인터넷에 검색해봐도 아무것도 나오지 않았습니다.
그런 다음 오류 위에 다음과 같은 몇 줄의 경고가 표시되는 것을 발견했습니다.
prisma:warn Prisma failed to detect the libssl/openssl version to use, and may not work as expected. Defaulting to "openssl-1.1.x".
GitHub에서 검색한 결과 다음과 같은 내용을 찾았습니다.
Prisma가 새로운 책벌레에서 openssl 3.0.x를 찾지 못했습니다
어떤 이유로 제가 사용하고 있던 Alpine Docker 이미지의 새 버전이 Prisma 엔진에 필요한 openssl 패키지와 함께 제공되지 않는다는 것을 깨달았습니다.
위에 공유한 문제 토론에서는 노드 버전 18.5를 사용하면 이 문제를 일시적으로 해결하거나 다른 Docker 이미지를 사용할 수 있다고 나와 있습니다.
하지만 다른 버전의 노드를 사용하거나 다른 패키지와 충돌할 필요는 없습니다.
그래서 패키지를 수동으로 설치해야 합니다.
제가 사용했던 Docker 이미지는 다음과 같습니다.
FROM node:18-alpine
다음 줄을 추가했습니다.
# install openssl RUN apk update && apk upgrade RUN apk add --no-cache openssl
그리고 문제가 해결되었습니다.
위 내용은 Prisma: 스키마 엔진 응답을 구문 분석할 수 없습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!