Tag: 共享内存

共享内存与docker集装箱(docker版本1.4.1)

我有1个进程写入docker集装箱中的共享内存的特定部分(即“/ falcon”)。 Docker镜像:dockersharedmemory / shmclient 我有另一个进程,最初创build和读取另一个docker集装箱中的每一秒共享内存(即“/猎鹰”)的相同部分。 Docker镜像:dockersharedmemory / shmserver 当我使用以下命令运行这两个容器时,我可以在每个容器中分别读写: docker run -d -v /dev:/dev dockersharedmemory/shmserver docker run -d -v /dev:/dev dockersharedmemory/shmclient 当我使用每个文档的“–ipc”选项我不能得到它的工作: docker run -d –ipc=host dockersharedmemory/shmserver docker run -d –ipc=host dockersharedmemory/shmclient 也不 docker run -d dockersharedmemory/shmserver drunk_feynman docker run -d –ipc=container:drunk_feynman dockersharedmemory/shmclient happy_fermi 客户端版本:1.4.1 客户端API版本:1.16 转到版本(客户端):go1.3.3 Git的提交(客户端):5bc2ff8 / 1.4.1 OS / Arch(客户端):linux / […]

与docker共享内存

对不起,我不能深入细节,主要是因为我对这个问题的认识不是很好。 我们有一个在java中构build的应用程序。 前端由apache web服务器提供服务。 Apache Web服务器的一部分是模块和小型C应用程序(我无法控制此应用程序的来源),它控制与Java应用程序服务器和一些caching机制的通信。 这个C程序做了一些共享内存,据我所知,它允许部分内存被不同的进程共享。 在configuration文件中,我可以configuration共享内存密钥,类似于0x2001和段的大小(以字节为单位)。 目前我们正在开发一个集装箱化的环境来运行这个应用程序。 我们使用docker来创build容器。 我的问题是: 有人知道,或者知道一些有关共享内存的良好文档,以及Docker如何pipe理这些内容? 内存键是指定容器特定的内存部分,还是直接映射到主机内存? 如果我们运行两个Apache服务器实例(包括c程序),都在他们自己的容器中,他们不应该共享同一块共享内存,但我不知道密钥是否应该是不同的,或者是docker已经分开。 我希望我的问题是清楚的,预先感谢您的任何有帮助的build议或文件!

在没有 – 特权选项的Docker容器中安装shm

如何在不使用–privileged选项的情况下在容器中安装/ dev / shm?

在Docker中,Amazon ECS支持–shm-size

我正在尝试使用AWS EC2容器服务(ECS)来运行dockerized webdriver(Selenium)Grid。 根据docker-selenium github页面,如果我们想在selenium-node-chrome映像上使用chrome浏览器运行长时间运行的testing,我们需要添加一些shared memory或者mount a volume到docker容器中。 在我的EC2实例中,当我做一个 df -h 我看到/dev/shm存在并具有3.7Gb of available free space 。 但是,如果我使用-v /dev/shm:/dev/shm属性将卷挂载到我的chrome-node容器,则在运行testing时浏览器甚至不会出现。 但是,如果我挂载父/dev目录,testing似乎运行了几秒钟,然后我得到“无法达到浏览器exception”,因为浏览器然后closures(我能够通过VNC查看器确认这一点)。 这让我意识到,通过ECS接口/ API安装一个卷是不会有所帮助的。 如果我直接启动docker而不通过ECS路由传递–shm-size属性 docker run –shm-size=2500m …. testing似乎运行没有任何麻烦。 但是, ECS显然不支持–shm-size属性。 那么如何解决或者解决这个问题,仍然使用ECS来传递–shm-size属性? 避免使用ECS是唯一的方法,还是有其他更好的方法?

如何在App Engine中灵活地更改/ dev / shm的大小

如何在App Engine Flexible应用程序中更改共享内存文件夹/dev/shm的大小? 默认情况下,它被设置为64M,太低而无法运行多个应用程序(例如,chrome)。 我没有看到任何改变它的方法。 如果您有权访问docker run命令 ,则有方法可以更改它,但启动应用程序引擎灵活应用程序时,我们没有此类访问权限。