[英]Linking Container in AWS Fargate
我嘗試在AWS Fargate上設置一個小例子,並嘗試在那里有一個帶有一個數據庫容器的應用程序容器。
任務定義啟動兩個容器,但我的app容器因getaddrinfo ENOTFOUND db db:3306
失敗。 因此,我的應用程序容器找不到數據庫容器。
由於Fargate不允許Docker容器的“鏈接”,我想知道他們如何相互通信。 數據庫容器的名稱為db
,端口為3306
,我的app容器配置為使用它。
不幸的是,定義容器的鏈接不適用於Fargate,但僅適用於“oldschool”ECS / EC2。
在本地的docker-compose設置中,它以這種方式工作。
Fargate任務中的容器共享網絡命名空間,因此您根本不需要使用鏈接。 您只需通過localhost進行通信即可。
例如,如果容器A在端口8000上運行Web服務器,則容器B可以使用curl http://localhost:8000/
到達它
您可以設置它,以便服務可以通過公共IP地址相互通信,然后使用VPC保護端口,只有服務可以自己與之通信。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.