停用公用 IP 的服務中的 Fargate 任務無法從 S3 下載 env 文件

停用公用 IP 的服務中的 Fargate 任務無法從 S3 下載 env 文件

我們有一個 Fargate 服務,應該透過負載平衡器暴露到互聯網,並且由於到目前為止我們使用了任務的隨機公共 IP 進行測試,因此我們決定禁用公共 IP,以便它對任務有意義只能通過負載平衡器訪問該服務。

不過,停用公用 IP 似乎會使 Fargate 內的容器無法從 S3 下載 env 檔案。奇怪的事實是,來自 ECR 的映像已被拉取,但任務在嘗試獲取 env 檔案時失敗。

根據這個:https://aws.amazon.com/premiumsupport/knowledge-center/ecs-task-environment-variables/

如果您的 ECS 任務位於公有子網路中,請確認下列各項: 確保該任務啟用了公有 IP 位址。

該服務位於公共子網路中,因此根據此我們應該擁有公共IP。

由於公共子網路本身應該能夠存取互聯網,這是否有原因?為什麼 ECR 拉動仍然有效?

謝謝

答案1

你說你禁用了公共IP。容器/伺服器需要公用 IP 才能透過網際網路閘道到達 S3。

如果您想在沒有公共 IP 的情況下存取 S3,請使用S3 VPC 端點

相關內容