首页 > 解决方案 > 如何将现有的 vpc 用于不同的项目?

问题描述

我已经部署了一个与 vpc 关联的项目(A)。这是主项目的 serverless.yml

# @format

service:
  name: divo-backend


provider:
  name: aws
  runtime: nodejs10.x
  stage: ${opt:stage, 'staging'}
  region: ${opt:region, 'ap-south-1'}
  versionFunctions: false
  prune:
    automatic: true
    number: 2
  apiGateway:
    minimumCompressionSize: 1024 # Enable gzip compression for responses > 1 KB

  vpc:
    securityGroupIds:
      - Ref: DivoSecurityGroup
    subnetIds:
      - Ref: DivoPrivateSubnet
      # - Ref: DivoSubnetA

<-------------------- all the apis ----------------------->

resources:
  Resources:
    DivoVPC: ${file(./resources/DivoVPC.yml)}
    DivoSubnetA: ${file(./resources/DivoSubnetA.yml)}
    DivoSubnetB: ${file(./resources/DivoSubnetB.yml)}
    DivoSubnetC: ${file(./resources/DivoSubnetC.yml)}
    DivoSecurityGroup: ${file(./resources/DivoSecurityGroup.yml)}
    DivoDBSubnet: ${file(./resources/DivoDBSubnet.yml)}
    DivoDB: ${file(./resources/DivoDB.yml)}
    DivoIG: ${file(./resources/DivoIG.yml)}
    DivoIGAttachment: ${file(./resources/DivoIGAttachment.yml)}
    PublicRouteTable: ${file(./resources/PublicRouteTable.yml)}
    PublicRoute: ${file(./resources/PublicRoute.yml)}
    PublicSubnet1RouteTable: ${file(./resources/PublicSubnet1RouteTable.yml)}
    PublicSubnet2RouteTable: ${file(./resources/PublicSubnet2RouteTable.yml)}
    DivoNatGateway: ${file(./resources/DivoNatGateway.yml)}
    DivoNatGatewayEIP: ${file(./resources/DivoNatGatewayEIP.yml)}
    DivoNoIngressSecurityGroup: ${file(./resources/DivoNoIngressSecurityGroup.yml)}
    DivoPrivateRoute: ${file(./resources/DivoPrivateRoute.yml)}
    DivoPrivateRouteTable: ${file(./resources/DivoPrivateRouteTable.yml)}
    DivoPrivateSubnet: ${file(./resources/DivoPrivateSubnet.yml)}
    PrivateSubnetRouteTable: ${file(./resources/PrivateSubnetRouteTable.yml)}
    DivoUploadBucket: ${file(./resources/DivoUploadBucket.yml)}
    DivoThumbnailBucket: ${file(./resources/DivoThumbnailBucket.yml)}
    DivoThumbnailBucketPolicy: ${file(./resources/DivoThumbnailBucketPolicy.yml)}
    DivoUpcBucket: ${file(./resources/DivoUpcBucket.yml)}
    DivoTemplatesBucket: ${file(./resources/DivoTemplatesBucket.yml)}
    DivoTemplatesBucketPolicy: ${file(./resources/DivoTemplatesBucketPolicy.yml)}
    DivoExportBucket: ${file(./resources/DivoExportBucket.yml)}
    DivoExportBucketPolicy: ${file(./resources/DivoExportBucketPolicy.yml)}
    DivoExportExcelQueue: ${file(./resources/DivoExportExcel.yml)}
    DivoExportExcelDLQ: ${file(./resources/DivoExportExcelDLQ.yml)}
    DivoGatewayResponse: ${file(./resources/DivoGatewayResponse.yml)}

现在我已经部署了一个不同的项目(B),现在我想让这个项目 B 在 A 的 vpc 下。

我如何做到这一点?我应该如何修改serverless.yml项目B的?

标签: amazon-web-servicesserverless-frameworkserverlessamazon-vpc

解决方案


推荐阅读