python – OSError:[Errno 28]设备Docker上没有剩余空间,但我有空间

前端之家收集整理的这篇文章主要介绍了python – OSError:[Errno 28]设备Docker上没有剩余空间,但我有空间前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

正如标题所示,我在一个docker容器中运行jupyter,并且我在以下行的scikit learn / numpy库中深入了解python的OSError:

pickler.file_handle.write(chunk.tostring('C'))

我做了一些故障排除,人们似乎遇到的大多数问题是他们的硬盘驱动器或RAM实际耗尽了空间,这对我来说不是AFAIK.

这就是我的df的样子:

Filesystem                    1K-blocks       Used   Available Use% Mounted on
udev                           16419976          0    16419976   0% /dev
tmpfs                           3288208      26320     3261888   1% /run
/dev/sdb7                     125996884   72177548    47395992  61% /
tmpfs                          16441036     238972    16202064   2% /dev/shm
tmpfs                              5120          4        5116   1% /run/lock
tmpfs                          16441036          0    16441036   0% /sys/fs/cgroup
/dev/sdb2                         98304      32651       65653  34% /boot/efi
tmpfs                           3288208         68     3288140   1% /run/user/1000
//192.168.1.173/ppo-server3 16864389368 5382399064 11481990304  32% /mnt/ppo-server3

这是我的自由看起来像:

             total        used        free      shared  buff/cache   available
Mem:       32882072     7808928    14265280      219224    10807864    24357276
Swap:        976892      684392      292500

我在看正确的df和免费输出吗?它们都是从容器内的bash实例运行的.

最佳答案
正如@PeerEZ所述,当sklearn尝试并行化作业时会发生这种情况.

sklearn尝试通过写入/ dev / shm在进程之间进行通信,这在docker容器上限制为64mb.

您可以尝试使用@PeerEZ建议的n_jobs = 1运行(如果无法重新启动容器),或者如果需要并行化,请尝试使用–shm-size选项运行容器为/ dev设置更大的容量/ shm.例如. –

docker run --shm-size=512m 
原文链接:https://www.f2er.com/docker/436764.html

猜你在找的Docker相关文章