【发布时间】:2021-10-30 14:58:52
【问题描述】:
我正在使用 CodePipeline 和 CodeDeploy 来自动化部署过程。 代码采购和 docker 镜像构建发生在 AWS 之外。我在 AWS 之外有一个 git 管道,它在代码推送时构建/打包 docker 映像并将 docker 映像推送到 ECR。
将 docker 映像推送到 AWS ECR 后,立即启动 AWS 管道并开始 ECR 源阶段。此阶段的输出工件不能直接传递到部署阶段。它需要一个 AppSpec 文件。
{
"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 文件传递到部署阶段,以便将映像部署到 lambda。
为 lambda 使用 CodeDeploy 阶段的原因是它支持蓝/绿部署和版本控制。
我找不到任何与 ECR 作为来源的 lambda 部署相关的文档。
如果有人有任何解决方法,请告诉我。
【问题讨论】:
标签: docker aws-lambda deployment aws-codepipeline aws-code-deploy