一千萬個為什麽

搜索

適用於Ubuntu Docker鏡像的AWS任務定義內存



我們在AWS ec上使用阿爾卑斯山圖片,這些圖片在任務定義中只有100mb內存上運行良好。 現在我們需要大小超過180MB的Ubuntu鏡像,而高山只有5MB。

  • 我想知道我們需要根據圖像增加內存嗎?

  • 或Docker鏡像完全在內存中運行,或者只是在內存中的當前進程中運行如果我在任務定義中指定的內存少於docker鏡像大小?

AWS推薦300到500MB,但在開發中我想節省內存。

謝謝

轉載註明原文: 適用於Ubuntu Docker鏡像的AWS任務定義內存

一共有 1 個回答:

您可以明智地使用兩個重要參數來處理AWS ECS任務定義。

memory:

內存的硬限制(以MiB為單位)呈現給容器。如果你的   容器嘗試超出此處指定的內存容器   被殺害。

memoryReservation:

Docker試圖將容器內存保持在這個軟限制之下;   但是,您的容器在需要時可以消耗更多內存。

我建議你使用 memoryReservation 。所以你的任務定義將如下所示。

{
  "family": "my-alpine",
  "networkMode": "bridge",
  "containerDefinitions": [
    {
      "image": "alpine:latest",
      "name": "my-alpine",
      "memoryReservation": 100,
      ...
      ...
    }
  ]
}