【问题标题】:How does Docker and AWS ECS Service interact?Docker 和 AWS ECS 服务如何交互?
【发布时间】:2020-01-23 22:10:24
【问题描述】:
我是亚马逊网络服务的新手,我参与了一个项目,我们决定使用由 lambda(nodejs)、dynamo DB、cognito 等组成的用户无服务器架构,作为一名 DevOps 工程师,我试图弄清楚如何为项目制作CD/CD。
我已经阅读了多篇文章,他们提到了我理解的 fargate 和其他服务,但是当谈到 docker 和 ECS 时我有点困惑,*
我不知道是我们将镜像推送到 ECS 并写入 dockerfile 以便我的 lambda 函数可以运行,还是我们只是将镜像推送到 ECS 以便 lambda 函数集群可以运行?
谢谢
【问题讨论】:
标签:
docker
aws-lambda
amazon-cognito
amazon-ecs
aws-fargate
【解决方案1】:
我不知道我们是否将图像推送到 ECS 并写入 dockerfile 所以
我的 lambda 函数可以运行,或者我们只是将图像推送到 ECS
lambda 函数的集群可以运行吗?
您将 Docker 映像推送到 AWS Elastic Container Registry (ECR)。然后 ECS 可以拉取这些镜像以在 EC2 或 Fargate 中部署 docker 容器。
ECS、ECR 和 Docker 与 AWS Lambda 完全无关。您不会在 AWS Lambda 中运行 docker 容器。
【解决方案2】:
使用 Jenkins 实现了类似的功能。我们使用 jenkins 创建 docker 镜像作为 CI CD 管道的一部分。然后我们将这些 docker 镜像存储在 ECR 中。在 ECS 中,我们创建任务定义和容器实例,然后容器实例将引用我们作为 CICD 的一部分创建的 ECR 映像。
Dokcerfile 是 docker 镜像的一部分。