閱讀28 返回首頁    go 人物


限製容器資源__應用管理_用戶指南_容器服務-阿裏雲

Docker 容器的一大優勢就是可以限製資源,包括 CPU、內存、IO 等。該設置無法通過容器服務管理控製台進行操作,您需要在編排模板中進行設置。

限製 CPU

一個 CPU 核等於 100 CPU 資源。如果機器配置是 4 核,則總共可用的 CPU 資源為 400。在編排模板中,可以通過 cpu_shares 參數指定。cpu_shares: 50表示使用 0.5 個核。

限製內存

您可以使用 mem_limit 參數限製內存,單位為 byte,最小內存為 4MB。如果設置了內存限製,當容器申請的內存超過限製時,容器會因為 OOM 而停止運行。

下麵的編排模板演示了如何限製 CPU 和內存。

  1. n1:
  2. expose:
  3. - 443/tcp
  4. - 80/tcp
  5. image: 'nginx:latest'
  6. cpu_shares: 50 #0.5核
  7. mem_limit: 500000000 #500MB
  8. labels:
  9. aliyun.scale: '1'
  10. restart: always
  11. volumes:
  12. - /var/cache/nginx

資源調度

為了保證容器能獲得足量的指定資源,比如上述例子裏的 0.5 核 CPU 和 500MB 內存,容器服務會為容器預留資源。比如,一台 4 核的機器,最多會調度 8 個 cpu_shares=50 的容器。但是,如果創建容器時未指定 cpu_sharsmem_limit,則默認不占資源。

限製其他資源

其他資源限製請參考 Docker Compose 的說明

最後更新:2016-12-16 13:16:06

  上一篇:go 創建應用__應用管理_用戶指南_容器服務-阿裏雲
  下一篇:go 指定節點調度__應用管理_用戶指南_容器服務-阿裏雲