我正在尝试建立一个无服务器项目,该项目将托管在Google云平台上。这是serverless.yml
的样子
plugins: # List of plugins of use on application
- serverless-offline # Get your serverless configuration and run the server local
- serverless-plugin-typescript-express
# Project name on the infrastructure created
service: ansaar-auth
provider:
name: google # Provider name, where the infrastructure has be created
runtime: nodejs # The node version where the lambda functions going to run
project: ansaar-auth
credentials: ~/.gcloud/auth.json
# stage: dev # Control the environment of application
# region: us-east-1 # Default region where the lambda functions running
functions: # The array with definitions of lambda functions of the your application
getUsers: # Lambda function name
handler: src/server.handler # The function name mapped of the application
events: # Array of events that call the function
- http: # Type of event, the http event selected, it's event is a endpoint mapped on api gateway
path: users
method: get
设置了凭据according to the docs,但是由于某些原因,部署无法正常工作,并始终引发以下错误:
Serverless Error ---------------------------------------
The specified provider "google" does not exist.
有人知道如何修复它并将项目成功部署到GCP吗?
答案 0 :(得分:2)
要使用Google云功能,请安装serverless-google-cloudfunctions
插件。
您可以使用serverless.yml
serverless create --template google-nodejs --path gcp
它应该像这样:
service: gcp
provider:
name: google
stage: dev
runtime: nodejs8
region: us-central1
project: my-project
# The GCF credentials can be a little tricky to set up. Luckily we've documented this for you here:
# https://serverless.com/framework/docs/providers/google/guide/credentials/
#
# the path to the credentials file needs to be absolute
credentials: ~/.gcloud/keyfile.json
plugins:
- serverless-google-cloudfunctions
# needs more granular excluding in production as only the serverless provider npm
# package should be excluded (and not the whole node_modules directory)
package:
exclude:
- node_modules/**
- .gitignore
- .git/**
functions:
first:
handler: http
events:
- http: path
以下是完整的快速入门指南:https://serverless.com/framework/docs/providers/google/guide/quick-start/