upe*_*dra 6 linux ubuntu shared-memory procfs docker
我已经在 Ubuntu 12.04 上安装了 docker 0.11.1。当我运行以下命令时,我试图将 shmmax 从其固定值 (32 M) 更改为更大 (1G) 的值(1G):
sysctl -w kernel.shmmax=1073741824
error: "Read-only file system" setting key "kernel.shmmax"
Run Code Online (Sandbox Code Playgroud)
那是因为/proc安装ro在容器中。
有人能告诉我如何r/w在我的容器中安装 proc来更改它吗?
如果目标是设置 sysctl 设置,docker 已经意识到了这个问题,在 1.12+ 中,您可以在运行 docker 容器(或在您的 compose 文件中)时使用 --sysctl 标志,这将在运行之前设置容器内的值。
遗憾的是,这还没有集成到 dockerfile 语法中。
docker run --sysctl kernel.shmmax=1073741824 yourimage
Run Code Online (Sandbox Code Playgroud)
示例 docker-compose.yml(必须使用版本 2.1):
version: '2.1'
services:
app:
sysctls:
- kernel.shmmax=1073741824
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9706 次 |
| 最近记录: |