我的系统是 Ubuntu 14.04
,原始内核为 3.13
$ uname -a
Linux dai-fp-adrecognizer 3.13.0-161-generic #211-Ubuntu SMP Wed Oct 3 14:52:35 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
我的容器曾经在系统上运行良好。docker-compose.yml
如下:
version: '3'
services:
scheduler:
image: dreg.be/tvacr/dai-ws-server:1.0.2
volumes:
- /etc/dai-wsserver/ws_server_conf.ini:/etc/dai-wsserver/ws_server_conf.ini
ports:
- 6789:6789
command: /etc/dai-wsserver/ws_server_conf.ini
今天下午,我按照此说明确实在系统上安装了ffmpeg
。基本上执行了下面的命令:
sudo add-apt-repository ppa:mc3man/trusty-media
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install ffmpeg
之后,我得知我的容器突然停止了。我尝试重新启动它,但它总是失败,打印出此错误:
docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:297: copying bootstrap data to pipe caused "write init-p: broken pipe"": unknown.
进行了一些搜索后,我找到了该问题的错误报告。然后,我遵循了建议将内核升级到 4.4
的最受倾向的评论:
sudo apt-get install --install-recommends linux-generic-lts-xenial
sudo reboot
现在我的内核是4.4
:
$ uname -a
Linux dai-fp-adrecognizer 4.4.0-146-generic #172~14.04.1-Ubuntu SMP Fri Apr 5 16:51:29 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
但是我的容器仍然无法开始打印出不同的错误:
$ docker-compose up
Creating dai-wsserver_scheduler_1 ... error
ERROR: for dai-wsserver_scheduler_1 Cannot create container for service scheduler: error creating aufs mount to /var/lib/docker/aufs/mnt/79d5913e12e2439a40f1dfbfa2b6b615ef476f5c2c4694e0dd8726bb17e52dae-init: no space left on device
ERROR: for scheduler Cannot create container for service scheduler: error creating aufs mount to /var/lib/docker/aufs/mnt/79d5913e12e2439a40f1dfbfa2b6b615ef476f5c2c4694e0dd8726bb17e52dae-init: no space left on device
ERROR: Encountered errors while bringing up the project.
我确实检查了系统上剩下的空间,所有这些都应该看起来不错:
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 7.9G 12K 7.9G 1% /dev
tmpfs 1.6G 344K 1.6G 1% /run
/dev/xvda1 12G 6.7G 4.5G 61% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
none 5.0M 0 5.0M 0% /run/lock
none 7.9G 7.9G 0 100% /run/shm
none 100M 0 100M 0% /run/user
$ sudo du -h --max-depth=1 /var/lib/docker/aufs
288K /var/lib/docker/aufs/layers
300K /var/lib/docker/aufs/mnt
2.7G /var/lib/docker/aufs/diff
2.7G /var/lib/docker/aufs
我无法弄清楚系统发生了什么以及如何修复它。帮助您表示赞赏!
我确实找到了解决问题的解决方案。简而言之,我确实在/var/lib/docker
aufs
的东西 sudo service docker stop
sudo rm -rf /var/lib/docker/aufs
sudo rm -f /var/lib/docker/linkgraph.db
sudo service docker start
当然所有图像都将消失。但这很好,我可以重新绘制图像。
它在安装ffmpeg之前工作(以及相关的系统更改(;一切正常工作时,您可以回到"已知的好"状态吗?从那时起,我将研究FFMPEG对系统的变化。这就是错误的根本原因。