如何显示 docker 分配的所有共享内存

How to show all shared memory allocated by docker

当我运行一个带有ipc=host的docker图像并调用shmget在容器中分配共享内存时,我可以运行ipcs -m 在主机上显示此共享内存信息。

如果我使用默认ipc模式运行 docker图像,我可以运行 ipcs -m显示docker中的共享内存,但是我无法使用相同的方法在主机上显示它。

有没有什么办法可以在host上显示docker容器分配的所有共享内存信息,即使ipc模式不是host?

您可以使用它从主机获取有关每个容器的信息:

sudo docker inspect <container-id> | grep Mem

示例:

sudo docker inspect a1776a975e3a | grep Mem

运行 你的容器

docker exec -it containerName bash

这将在docker容器中打开终端,在终端使用

df -h | grep shm

示例输出