我注意到命令 docker build
有一个参数 --shm-size bytes
它用于设置/dev/shm 的大小。但我不知道为什么docker build
需要使用共享内存。docker build
命令只是遵循 Dockerfile 并运行一组中间容器来构建目标容器环境并将它们作为镜像提交。在这个过程中,Dockerfile中的所有参数和命令都被解析并打包成一个struct,传入不同的组件(docker client、docker daemon、containerd、runc ...)。看来docker build
不需要共享内存来传递信息。
但为什么docker build
提供此参数 --shm-size bytes
?也许我对这个过程有一些误解。请纠正我。谢谢!
最佳答案
--shm-size
docker build
的选项设置 /dev/shm
作为构建过程的一部分启动的中间容器的大小。
关于linux - 为什么Docker构建需要使用/dev/shm?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59654559/