Ошибка при развертывании Next.js на AWS Усиливают

#amazon-web-services #firebase #aws-lambda #next.js #grpc

#amazon-веб-сервисы #firebase #aws-лямбда #next.js #grpc

Вопрос:

Я размещал свой Next.js веб-приложение с SSR на AWS усиливалось, пока однажды я не получил ошибку 503.

Ошибка, которую я получил однажды ни с того ни с сего

Покопавшись в консоли AWS, я наткнулся на журнал CloudWatch для функции lambda, которая обрабатывает SSR-часть приложения.

 2021-12-02T19:40:49.972Z    1bb29425-4acf-44aa-aabb-ba5afa558512    ERROR   Invoke Error    {
"errorType": "Error",
"errorMessage": "Cannot find module '@grpc/grpc-js/package.json'nRequire stack:n- /codebuild/output/src947501987/src/focalpick-client/node_modules/@firebase/firestore/dist/index.node.mjs",
"code": "MODULE_NOT_FOUND",
"requireStack": [
    "/codebuild/output/src947501987/src/focalpick-client/node_modules/@firebase/firestore/dist/index.node.mjs"
],
"stack": [
    "Error: Cannot find module '@grpc/grpc-js/package.json'",
    "Require stack:",
    "- /codebuild/output/src947501987/src/focalpick-client/node_modules/@firebase/firestore/dist/index.node.mjs",
    "    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15)",
    "    at Function.Module._load (internal/modules/cjs/loader.js:746:27)",
    "    at Module.require (internal/modules/cjs/loader.js:974:19)",
    "    at require (internal/modules/cjs/helpers.js:93:18)",
    "    at Object.578847 (/var/task/chunks/559.js:500372:34)",
    "    at __webpack_require__ (/var/task/webpack-runtime.js:25:43)",
    "    at Object.526541 (/var/task/chunks/962.js:2299:22)",
    "    at __webpack_require__ (/var/task/webpack-runtime.js:25:43)",
    "    at Module.778514 (/var/task/chunks/962.js:2021:20)",
    "    at __webpack_require__ (/var/task/webpack-runtime.js:25:43)"
]}
 

Ошибка говорит о том, что он не может найти модуль @grpc/grpc-js . Похоже, что это пакет, который Firebase использует внутри. Я попытался установить пакет в свой репозиторий, повторно развернул приложение Amplify, но это не помогло. Однако попытка развернуть чистое приложение next сработала.

Все проблемы и вопросы, которые я прочитал, не помогли мне найти решение.

Комментарии:

1. Какую версию firebase SDK вы используете? Похоже, это проблема, представленная в версии 9.5.0 , см. github.com/firebase/firebase-js-sdk/issues/5752 . Я бы предложил понизить рейтинг на данный момент, пока не будет выпущено исправление.

2. @juliomalves спасибо за подсказку по проблеме. Я полагаю, что это проблема firebase после версии 9.1.0 .. но я не хочу возвращаться к версии 8 .. mehh

Ответ №1:

После долгих исследований я обнаружил, что firebase в настоящее время имеет проблемы с версией 9.2.0 и выше при развертывании на облачных провайдерах, таких как AWS.

Мое временное решение — понизить рейтинг до firebase@9.1.0 тех пор, пока проблема не будет устранена.

Проблема с github, которая помогла мне разобраться, заключается в следующем: [9.5.0] Ошибка: не удается найти модуль «@grpc/ grpc-js/package.json» в electron

Ответ №2:

Это происходило со мной на next@12.0.9 , После тестирования многих вещей, я просто понизил версию до next@12.0.8 и это начало работать.

Комментарии:

1. Приятно это слышать. Как упоминалось выше, моей проблемой была firebase.