簡體   English   中英

如何在Docker中掛載Hugepages

[英]How to Mount Hugepages inside Docker

我有一個在Docker內部運行的應用程序,需要Huge-page才能運行。現在我嘗試按照以下命令進行設置。

CMD ["mkdir", "-p" ,"/dev/hugepages"]
CMD ["mount" ,"-t", "hugetlbfs" , "none", "/dev/hugepages"]
CMD ["echo 512" ,">" ,"/proc/sys/vm/nr_hugepages"]
CMD ["mount"]

但我看不到mout命令掛載Hugepages,為什么?

任何人都可以指出我,可以這樣做嗎?

有很多東西在手;

首先,一個Dockerfile僅具有單個命令( CMD ); 你在做什么是行不通的; 如果啟動容器時需要執行多個步驟,請考慮使用入口點腳本,例如, 這是官方mysql映像的入口點腳本。

其次,在容器中進行mount需要其他特權。 您可以使用--privileged但是這可能一步之遙,並且給容器提供了太多特權。 您可以嘗試使用--cap-add SYS_ADMIN代替來運行容器。

替代解決方案

一個更干凈的解決方案可能是在主機上掛載大量頁面 ,並允許容器訪問該設備。

docker run --device=/dev/hugepages:/dev/hugepages ....

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM