如何使用AWS部署多容器Docker应用程序



我一直在编程一个由NodeJS前端组成的全栈应用程序。Net Backend,SQL Server DB和我已经成功地使用docker compose对应用程序进行了完全的docker化。自从我开始这个项目以来,我已经走过了很长的路,但我仍然需要更多的帮助来完成它。我现在正在将我的docker容器部署到AWS中(不知怎么的(,我遇到了一点问题。请记住,我是一个初学者,这对我来说相当复杂。

到目前为止,这是我最接近于正确部署应用程序所有3个部分的实际解决方案。

  1. 创建了一个安全组,该组对所有IPv4和IPv6都有入站,对所有IPv4都有出站
  2. 使用默认VPC在端口80上创建了一个侦听负载平衡器
  3. 创建了SSH的密钥对
  4. 创建了一个集群,包含3个实例(后端、前端、数据库(默认VPC、SG创建、默认角色
  5. 创建了ECR并单独推送了我所有的docker图像,3个ECR
  6. 创建了EC2任务定义,没有角色,512个内存,每个ECR url的容器,512个存储器,0:80映射
  7. (如有必要,不确定(创建了一个服务来链接LB等。当我这样做的时候,我能够同时运行所有3个任务,没有任何问题,所以对我来说这似乎是一个进步。然而,当涉及到端口或IP时,我做了一些错误的事情,因为我无法访问任何实例的公共DNS,甚至SSH,它超时了

问题:

  • 我哪里出错了吗?具体来说,在端口或IP中,我不确定错误在哪里

备注:

  • 这是一个简单的项目,我可能会有1-2个月的时间,我不打算花费超过5-10美元。这只是一个使用CRUD操作的简单项目
  • 最终目标只是让一切都在AWS上运行,这样我就可以在DB上执行CRUD,而不是长期或复杂的

p。S我必须使用AWS

考虑到您想要花费的金额,实现目标的最简单方法是按照您的描述将您的解决方案移动到EC2。你这样做会遇到什么问题?

您还可以探索Docker Compose和ECS 的集成

还可以看看这个-https://aws.amazon.com/blogs/containers/deploy-applications-on-amazon-ecs-using-docker-compose/

最新更新