使用容器的一大目的就是要限定应用的资源使用,因此我们需要获得容器的初始内存大小,运行中内存大小以及最大内存。这一部分可以通过vmstat等工具来获得。需要指出的是,内存和CPU都是利用CGroup内核技术进行控制的,所以控制的是使用上限,并不是分配以后就专属于某个容器。只不过如果你的应用使用内存超过了上限,程序会触发OOM(out of memory),可能会被Kill掉,例如你是通过tomcat来封装应用的,由于启动时候需要使用更多的内存,可能会存在被Kill的可能性。这些都可以通过docker log和系统日志来进行查看。