amazon-web-services - AWS ECS 的端口映射
问题描述
我是 ecr/ecs/ec2 的新手。我开始将我的应用程序部署到我购买的域。我的应用程序有一个前端和一个后端。我的前端在 localhost:3000 上运行并在 localhost 5000 上调用其后端 api。我本地计算机上的端口映射与在 aws 上创建任务定义时相同吗?
解决方案
我希望对此有一个简单的是/否的答案。但是没有。
ECS 使用 4 种组网方式。awsvpc、网桥、主机和无。None 在这里不相关,因为那里没有网络。
对于 awsvpc,容器有自己的 ENI。这意味着您的容器将充当主机,而您公开的端口将是您服务的端口。
对于桥接,您使用 docker 网络并动态使用临时端口将您的容器端口映射到。如果你想使用同一个容器/任务的多个副本,这种模式是最好的。
对于主机,容器绕过 docker 网络并使用 EC2 ENI,如果您计划使用端口映射,则不允许在同一 EC2 实例上运行同一容器/任务的多个副本,从而限制您。
这在以下位置进行了详细说明:https ://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html
推荐阅读
- django - 在屏幕上显示 docx 文件
- node.js - 带有CORS的Angular 5调用api
- java - 没有表单登录的spring security使用rest端点进行身份验证
- mongodb - Mongodb .Net 驱动 查找不区分大小写
- angular - package.json 中带有自定义包的 Angular 应用程序
- reactjs - 反应过滤器状态未重新渲染
- c# - 如何循环通过 XElements 并使用 C# 比较值
- android - 为什么这个广播接收器可以在 Android 中工作?
- excel - 即使只有一行符合定义的条件,如何删除多个条目的所有行
- laravel-5.6 - Laravel Spark 6.0 Ajax 请求未经身份验证