Linking Container in AWS Fargate

老子叫甜甜 提交于 2019-11-29 01:52:28

问题


I try to setup a little example on AWS Fargate and try to have one application container with one database container there.

The task definition starts both containers, but my app container fails with getaddrinfo ENOTFOUND db db:3306. Therefore, the database container could not be found by my app container.

Since Fargate does not allow "links" of Docker containers, i'd like to know how they can communicate with each other. The database container has the name db with port 3306 and my app container is configured to use this.

Unfortunately, defining links of containers is not available for Fargate, but only for "oldschool" ECS/EC2.

In a local docker-compose setup it is working this way.


回答1:


Containers in Fargate tasks share a network namespace, so you don't need to use links at all. You can simply communicate via localhost.

For example, if you have container A running a web server on port 8000, container B could reach it with curl http://localhost:8000/




回答2:


You can probably set it up so the services can communicate over the public IP address with each other, then secure the ports using a VPC only the services can communicate with themselves on.



来源:https://stackoverflow.com/questions/47637588/linking-container-in-aws-fargate

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!