2016-01-22 61 views
1

我有虛擬大小6.5的碼頭工人形象GB如何內存分配在泊塢窗

REPOSITORY   TAG     IMAGE ID   CREATED    VIRTUAL SIZE 
Image_Name   latest    d8dcd701981e  About an hour ago  6.565 GB 

發生,但在我的系統的內存只有4GB,容器在一個良好的速度工作,雖然,我真正困惑的是如何爲Docker容器完成RAM分配。對於分配給容器的RAM大小是否有任何限制,因爲在末端泊塢窗容器中只是運行在操作系統中的另一個隔離進程。

回答

0

圖像的虛擬大小無關,與內存分配

如果你的巨大圖像,一經推出容器,確實非常少,也不會保留多少內存(不佔用多少CPU)

有關內存分配的更多信息,請參見this answer:您可以在運行時限制最大內存分配。而且,與圖像大小無關。

例如:

$ docker run -ti -m 300M --memory-swap -1 ubuntu:14.04 /bin/bash 

我們設置的內存限制和禁用交換內存的限制,這意味着在容器中的進程可以使用300M內存,並儘可能多的交換內存,因爲他們需要(如果主機支持交換內存)。

+0

我運行使用OpencCV Python程序,並得到一個內存不足的錯誤有.http://stackoverflow.com/questions/34945569/out-of-memory-error-in-opencv3-0-which- is-running-inside-docker-container。你能建議任何事情爲什麼它發生,我正在使用我在我的問題中指定的圖像。 – kkk

+0

@kkk好的:我已經爲你的新問題添加了一個答案。 – VonC