与 docker 共享内存

Shared memory with docker

很抱歉我不能说太多细节,主要是因为我自己对这个主题的了解不是很好。

我们有一个在 java 中构建的应用程序。前端由 apache 网络服务器提供服务。 apache 网络服务器的一部分是一个模块和小型 C 应用程序(我无法控制此应用程序的源代码),它控制与 java 应用程序服务器和一些缓存机制的通信。

这个 C 程序用共享内存做了一些事情,据我所知,它允许不同进程共享部分内存。

在配置文件中,我可以配置共享内存密钥,类似于 0x2001 和以字节为单位的段大小。

我们目前正在为 运行 此应用开发容器化环境。我们使用 docker 创建容器。

我的问题是:

有没有人知道,或者知道一些关于共享内存的好文档以及 Docker 如何管理它?内存键是指定容器特定的内存部分,还是直接映射到主机内存?

如果我们运行两个apache服务器的实例(包括c程序),都在自己的容器中,它们不应该共享同一块共享内存,但是不知道是不是键应该不同,或者 docker 已经进行了分离。

我希望我的问题很清楚,提前感谢您提供任何有用的建议或文档!

AFAIK 共享内存不在 docker 个实例之间共享。 Docker实例假设模拟一台单独的机器,共享内存仅在同一台机器上的进程之间共享。