方法一:创建容器时指定shm的大小
那么,应该怎样正确设置共享内存的大小呢?其实很简单,只需要我们在启动容器时加一个参数 --shm-size 即可,如:
docker run -it \
--gpus '"device=0,1"' \
--shm-size 32g \
--mount type=bind,source=/ssd1t/song/Datasets/coco,target=/master_data \
adenialzz/bilibili-projects:tch-mmdet-py38-tch19
方法二:修改配置文件
- 获取容器id
docker inspect dockername|grep Id
2.备份配置文件
cp /var/lib/docker/containers/id(第一步获取的容器id)/hostconfig.json /var/lib/docker/containers/id(第一步获取的容器id)/hostconfig.jsonbak
3.关闭docker
service docker stop
4.修改配置文件ShmSize的大小(自行计算,不要超过宿主机的共享内存大小)
5.保存文件,重启docker
service docker start
6.进入容器检查
df -h|grep shm