[Firebase]Cloud Functions for Firebase에서 runtime을 Node.js 12로 설정하고 배포하는 방법
소개
Cloud Functions for Firebase에서 배포하는 동안 노드 버전 주위에 오류가 발생하여 빠졌기 때문에 요약했습니다.
간결하게 설정하는 방법을 소개한 후, 빠져나갈 곳을 말미에 기재해 둡니다.
runtime을 Node.js 12로 설정하고 배포하는 방법
방법은 모두 2 가지 있습니다.
1. package.json에 작성하는 방법
다음과 같이 engines에 "node":"12"라고 기재한다
{
"name": "functions",
"description": "Cloud Functions for Firebase",
"scripts": {
},
"engines": {
"node":"12"
},
"dependencies": {
},
"devDependencies": {
},
"private": true
}
2. firebase.json에 작성하는 방법
firebase functions를 init하면 init한 현재 디렉토리에 firebase.json이 생성된다고 생각합니다. 거기에 다음과 같은 설명을 더하여 런타임을 지정할 수 있습니다!
{
"functions": {
"runtime": "nodejs12",
"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint"
]
}
}
v8.6.0에서 변경이 있었던 것 같습니다. or라고 쓰여 있듯이 package.json에서 할 수있는 방법도 사용할 수 있습니다.
공식 릴리스 노트
런타임 지정이 성공했을 때 deploy 로그
아래와 같이, creating Node.js 12 ~~~
라고 나와 있으면 지정되어 있습니다!
대전제・요주의
1. Firebase 플랜을 Blaze 플랜(종량 과금 플랜)으로 하는 것
2. 글로벌 설치되어 있는 firebase-tools가 최신인 것!
이것이 오래된 상태이면 다음과 같은 오류가 발생합니다.
Error: package.json in functions directory has an engines field which is unsupported. The only valid choices are: {"node": "8"} and {"node": "10"}.
3. 사용중인 라이브러리가 필요로하는 노드의 버전 요구 사항을 로컬 환경이 충족해야합니다!
deploy이므로 package.json에 올바르게 런타임을 지정하면 클라우드에서 문제없이 빌드 할 것이라고 생각했습니다. 공부합니다.)
자신은 사용하고 있는 라이브러리가 node v12이상을 요구하고 있었음에도 불구하고, 로컬의 node의 버젼이 v10계이었기 때문에, 연장해 이하의 에러가 나와 버렸습니다.
Error: There was an unknown problem while trying to parse function triggers. Please ensure you are using Node.js v6 or greater.
자신은 nodebrew를 사용하고 있었으므로 아래에서 해결했습니다. 버전은 자신의 라이브러리 요구 사항에 맞게 잘 변경하십시오.
nodebrew use 12.20.1
새로 만든 환경에 firebase-tools가 없는 경우 다음도 실행
npm i -g firebase-tools
참고
공식 릴리스 노트
Cloud Functions for Firebase에서 Node.js 12를 사용하는 방법
Reference
이 문제에 관하여([Firebase]Cloud Functions for Firebase에서 runtime을 Node.js 12로 설정하고 배포하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/iron-smri/items/833c86f956f10a7ea765
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
방법은 모두 2 가지 있습니다.
1. package.json에 작성하는 방법
다음과 같이 engines에 "node":"12"라고 기재한다
{
"name": "functions",
"description": "Cloud Functions for Firebase",
"scripts": {
},
"engines": {
"node":"12"
},
"dependencies": {
},
"devDependencies": {
},
"private": true
}
2. firebase.json에 작성하는 방법
firebase functions를 init하면 init한 현재 디렉토리에 firebase.json이 생성된다고 생각합니다. 거기에 다음과 같은 설명을 더하여 런타임을 지정할 수 있습니다!
{
"functions": {
"runtime": "nodejs12",
"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint"
]
}
}
v8.6.0에서 변경이 있었던 것 같습니다. or라고 쓰여 있듯이 package.json에서 할 수있는 방법도 사용할 수 있습니다.
공식 릴리스 노트
런타임 지정이 성공했을 때 deploy 로그
아래와 같이,
creating Node.js 12 ~~~
라고 나와 있으면 지정되어 있습니다!대전제・요주의
1. Firebase 플랜을 Blaze 플랜(종량 과금 플랜)으로 하는 것
2. 글로벌 설치되어 있는 firebase-tools가 최신인 것!
이것이 오래된 상태이면 다음과 같은 오류가 발생합니다.
Error: package.json in functions directory has an engines field which is unsupported. The only valid choices are: {"node": "8"} and {"node": "10"}.
3. 사용중인 라이브러리가 필요로하는 노드의 버전 요구 사항을 로컬 환경이 충족해야합니다!
deploy이므로 package.json에 올바르게 런타임을 지정하면 클라우드에서 문제없이 빌드 할 것이라고 생각했습니다. 공부합니다.)
자신은 사용하고 있는 라이브러리가 node v12이상을 요구하고 있었음에도 불구하고, 로컬의 node의 버젼이 v10계이었기 때문에, 연장해 이하의 에러가 나와 버렸습니다.
Error: There was an unknown problem while trying to parse function triggers. Please ensure you are using Node.js v6 or greater.
자신은 nodebrew를 사용하고 있었으므로 아래에서 해결했습니다. 버전은 자신의 라이브러리 요구 사항에 맞게 잘 변경하십시오.
nodebrew use 12.20.1
새로 만든 환경에 firebase-tools가 없는 경우 다음도 실행
npm i -g firebase-tools
참고
공식 릴리스 노트
Cloud Functions for Firebase에서 Node.js 12를 사용하는 방법
Reference
이 문제에 관하여([Firebase]Cloud Functions for Firebase에서 runtime을 Node.js 12로 설정하고 배포하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/iron-smri/items/833c86f956f10a7ea765
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Error: package.json in functions directory has an engines field which is unsupported. The only valid choices are: {"node": "8"} and {"node": "10"}.
Error: There was an unknown problem while trying to parse function triggers. Please ensure you are using Node.js v6 or greater.
nodebrew use 12.20.1
npm i -g firebase-tools
공식 릴리스 노트
Cloud Functions for Firebase에서 Node.js 12를 사용하는 방법
Reference
이 문제에 관하여([Firebase]Cloud Functions for Firebase에서 runtime을 Node.js 12로 설정하고 배포하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/iron-smri/items/833c86f956f10a7ea765텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)