通过yaml继承, 可以实现不同环境, 使用不同部署方式吗? 比如测试环境是 custom container 正式环境是 custom runtime 这个可以吗? https://github.com/VineFiner/start-vapor/blob/container-yaml/src/s.image.yaml
是的,通过 YAML 继承可以实现不同环境使用不同的部署方式。您可以在 serverless.yml 文件中定义不同环境的配置,然后在部署时指定相应的环境即可。例如,您可以在 serverless.yml 文件中定义以下内容:
# serverless.yml
service: my-service
provider:
name: aws
runtime: nodejs12.x
stage: ${opt:stage, 'dev'} # 使用 --stage 参数指定环境,默认为 dev
custom:
myVar: ${self:provider.stage}-value # 定义一个变量,根据环境动态生成值
functions:
hello:
handler: handler.hello
environment:
MY_ENV_VAR: ${self:custom.myVar} # 使用变量设置环境变量
# 定义测试环境的配置
test:
provider:
name: aws
runtime: nodejs12.x
stage: test
memorySize: 256
timeout: 10
environment:
MY_ENV_VAR: ${self:custom.myVar}-test
# 定义正式环境的配置
prod:
provider:
name: aws
runtime: nodejs12.x
stage: prod
memorySize: 512
timeout: 30
environment:
MY_ENV_VAR: ${self:custom.myVar}-prod
在部署时,您可以使用以下命令指定不同的环境:
sls deploy --stage test # 部署到测试环境,使用 test 配置
sls deploy --stage prod # 部署到正式环境,使用 prod 配置
这样,您就可以根据不同的环境使用不同的部署方式了。
是的,通过使用 YAML 继承,可以实现在不同环境中使用不同的部署方式。在您的 YAML 文件中,您可以定义一个基础配置,然后通过使用 extends 来继承该基础配置,并在测试环境和正式环境中分别覆盖一些配置项以适应不同的部署需求。您可以在测试环境中使用自定义容器,并在正式环境中使用自定义运行时。
可以,使用YAML继承可以实现不同环境使用不同的部署方式,使用“extends”关键字来继承“image.yaml”文件,并针对不同的环境进行了定制化设置。这种方法是常用的部署配置方式之一,可以方便地管理和维护多个环境的部署配置。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。