gpt4 book ai didi

amazon-web-services - 无服务器部署到 AWS、Azure 或 GCP

转载 作者:行者123 更新时间:2023-12-03 04:50:27 24 4
gpt4 key购买 nike

使用无服务器框架的人是否知道如果底层代码有能力,是否可以使用相同的无服务器部署文件来部署到所有三个云提供商?

或者无服务器文件是否特定于每个云提供商?

谢谢

最佳答案

假设您的所有函数代码与提供者无关...

每个提供商都有自己特定的定义和配置方式,因此您可能会期望每个提供商的 serverless.yml 文件的低级详细信息会有所不同。

话虽如此,serverless.yml 的高级属性对于大多数(如果不是全部)提供商来说非常常见。

service:


provider:


plugins:


functions:

这将允许您为所有提供者拥有一个 serverless.yml,仅根据环境变量引用其他 YAML 文件。假设您有用于特定于提供商的配置的 serverless-aws.ymlserverless-azure.ymlserverless-google.yml,您应该能够在您的 serverless.yml,

中使用它
service: ${file(serverless-${env:PROVIDER}.yml):service}


plugins: ${file(serverless-${env:PROVIDER}.yml):plugins}


provider: ${file(serverless-${env:PROVIDER}.yml):provider}


functions:
getSomething: ${file(serverless-${env:PROVIDER}.yml):functions.getSomething}
createSomething: ${file(serverless-${env:PROVIDER}.yml):functions.createSomething}
updateSomething: ${file(serverless-${env:PROVIDER}.yml):functions.updateSomething}
deleteSomething: ${file(serverless-${env:PROVIDER}.yml):functions.deleteSomething}

每当部署时,您都可以通过指定 PROVIDER 环境变量来选择要使用的提供程序。

$ PROVIDER=aws sls deploy    # Deploys to AWS

$ PROVIDER=azure sls deploy # Deploys to Azure

$ PROVIDER=google sls deploy # Deploys to GCP

关于amazon-web-services - 无服务器部署到 AWS、Azure 或 GCP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49045256/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com