容器销毁或停止时共享内存是否会被释放

Will shared memory be released when the container is destroyed or stopped

当我运行一个docker带有ipc=host的图像并调用shmget在容器中分配共享内存时,我可以运行ipcs -m 在主机上显示此共享内存信息。而且当容器停止或移除时,共享内存被保留,我必须手动移除共享内存。

所以如果一个容器运行有ipc=host,容器分配的共享内存不会在容器停止或移除时被销毁。

但是如果我使用默认的ipc模式来运行 docker图像,我就无法使用ipc -m显示主机上的共享内存信息。

有什么方法可以知道容器销毁或停止时共享内存是否被销毁。或者从docker实现的角度,当容器(不要运行和ipc=host)被销毁或停止时,共享内存会被释放吗?

我想答案是肯定的。 docker 分配的所有资源将在停止或删除时释放。但是对于主机模式,有些资源是属于主机的,容器不会释放它。