首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用ECR镜像作为源的AWS Lambda CodeDeploy

使用ECR镜像作为源的AWS Lambda CodeDeploy
EN

Stack Overflow用户
提问于 2021-09-01 05:18:55
回答 1查看 470关注 0票数 1

我正在使用CodePipeline和CodeDeploy自动执行部署过程。代码采购和docker镜像构建发生在AWS之外。我在AWS之外有一个git管道,它在代码推送时构建/打包一个docker镜像,并将docker镜像推送到ECR。

将docker镜像推送到AWS后,ECR is立即启动AWS管道并开始ECR源阶段。此阶段的输出工件不能直接传递到deploy阶段。它需要一个AppSpec文件。

代码语言:javascript
运行
复制
{
  "version": "0.0",
  "Resources": [
    {
      "awscodestar-gateway-api-lambda-HelloWorld": {
        "Type": "AWS::Lambda::Function",
        "Properties": {
          "Name": "awscodestar-gateway-api-lambda-HelloWorld",
          "Alias": "live",
          "CurrentVersion": "3",
          "TargetVersion": "4"
        }
      }
    }
  ]
}

我不知道如何将Docker镜像URL和AppSpec文件传递到deploy阶段,以便它将镜像部署到lambda。

将CodeDeploy阶段用于lambda的原因是它支持蓝/绿部署和版本控制。

我找不到任何与lambda部署相关的文档,其中ECR充当源代码。

如果有人有什么变通办法,请告诉我。

EN

回答 1

Stack Overflow用户

发布于 2021-09-02 22:17:45

使用ECR作为源,您可以指定存储库和标记:

代码语言:javascript
运行
复制
Name: Source
Actions:
  - InputArtifacts: []
    ActionTypeId:
      Version: '1'
      Owner: AWS
      Category: Source
      Provider: ECR
    OutputArtifacts:
      - Name: SourceArtifact
    RunOrder: 1
    Configuration:
      ImageTag: latest
      RepositoryName: my-image-repo

    Name: ImageSource

所以您已经知道docker图像的URL了。

一个流水线可以有多个源阶段(https://docs.aws.amazon.com/codebuild/latest/userguide/sample-pipeline-multi-input-output.html),因此可以假设一个是ECR,另一个是带有appspec的repo或bucket。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69008142

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档