报错
ERROR: Unexpected bus error encountered in worker. This might be caused by insufficient shared memory (shm)
Docker 查看容器共享内存大小
进入容器后可以df查看shm大小
docker exec -it ff /bin/sh
# df
Filesystem 1K-blocks Used Available Use% Mounted on
overlay 61255492 14586388 43527780 26% /
tmpfs 65536 0 65536 0% /dev
shm 65536 0 65536 0% /dev/shm
/dev/vda1 61255492 14586388 43527780 26% /etc/hosts
tmpfs 4024584 0 4024584 0% /proc/acpi
tmpfs 4024584 0 4024584 0% /sys/firmware
Docker 修改容器shm大小
第一步
// 找到要修改容器的 ID docker ps -a;
第二步
// 2f2162403489 为需要修改容器的 ID docker inspect 2f2162403489 | grep Id //输出显示需要的被修改的目录id "Id": "2f2162403489c3cff8bfbe52b17ff0c9d64cc7ad2905e318fdb2d298b806ndslanld",
第三步
//最高权限 su 输入密码 // 进入对应ID目录 cd /var/lib/docker/containers/2f2162403489c3cff8bfbe52b17ff0c9d64cc7ad2905e318fdb2d298b8 ls 找到 hostconfig.json文件
第四步
// 停止docker服务 systemctl stop docker //或者 service docker stop
第五步
// 修改 hostconfig.json
vi hostconfig.json
//找到shm,其中67108864为64m
"ShmSize": 67108864,
直接修改你需要的内存,保存退出
docker 在运行时指定shm大小
docker run -it --shm-size="1g" ubuntu