连接过多时Docker出现问题

e3bfsja2  于 2023-01-08  发布在  Docker
关注(0)|答案(5)|浏览(197)

在Docker构建期间,我遇到以下错误:

Step 1 : FROM million12/nginx-php:latest
 ---> 09c053597dda
Step 2 : COPY etc/docker-jenkins/default.conf /etc/nginx/hosts.d/default.conf
 ---> Using cache
 ---> 26a29dd01af3
Step 3 : COPY app /data/www/app
INFO[0012] link /var/lib/docker/overlay/99380f87e1572466529c4f668b5e79fe711496e9
85d313cc0d2f45bfdbdb3969/root/var/lib/yum/yumdb/p/939d2078d64d51ff7ad16150745e94
a26085bc93-php70-php-opcache-7.0.11-1.el7.remi-x86_64/checksum_type /var/lib/doc
ker/overlay/9ac18f869f20ba8ba29d2a16f00f2ce6ff1c6d0d1a40192a0efb8933c8ad1c45/tmp
root958106287/var/lib/yum/yumdb/p/939d2078d64d51ff7ad16150745e94a26085bc93-php70
-php-opcache-7.0.11-1.el7.remi-x86_64/checksum_type: too many links

有人有办法解决这个问题吗?在app目录里面没有太多的文件或目录,也没有那么长。我在ubuntu16.04上使用ext4fs。谢谢:)

siv3szwd

siv3szwd1#

我也遇到过同样的问题,但这是因为另一个原因。如果你使用overlayfs作为你的存储驱动程序(见docker info | grep 'Storage Driver'),你会很快得到“太多的链接”,因为它使用硬链接来制作图层,它有一个限制,它可以有多少。所以解决办法是改变到另一个,通常overlayfs2(为解决这个问题而制作)。

k5ifujac

k5ifujac2#

虽然这个问题现在已经很老了,但想补充我的一点。
当系统中有太多的悬挂图像时,可能会出现此问题。您应该不时地清除它们,或者您可以创建一个调度程序,以便不时地运行以清除这些悬挂图像。
尝试以下操作以删除悬挂图像:

sudo docker rmi -f $(docker images -q --filter dangling=true)

docker system prune

请参阅此链接了解更多悬挂图像点击here

zsohkypk

zsohkypk3#

我有一个类似的问题,我的 Docker 建设,并设法解决它(感谢OP的remidner)。
我的硬盘正在慢慢地充满,但似乎有足够的空间(大约2GB,图像比这小),实际上失败的部分是我的等效FROM million12/nginx-php:latest,但它从来没有报告那里的错误,只有在无论下一个命令是什么-即使它就像RUN echo 'Ultimate megaforce explosion festival 2017'
我注意到我运行docker ps -a时有大量的图像--大部分都过时了,我用docker rmi 8ab6f43e5e9b 87c6109bbdef 3668f4650c4f手动销毁了一堆......一长串ID将随之而来。你也可以用docker rm $(docker ps -aq)批量删除所有内容。我得到了大约25 GB的可用空间。
在那之后,构建开始工作。错误消息suuuucks。

cygmwpex

cygmwpex4#

docker system prune不再像我一样工作时,您可以使用sudo docker rmi -f $(docker images | grep "<none>" | awk ' { print $3} ')
非常感谢罗伯特在www.example.com上发表的评论https://github.com/coreos/bugs/issues/474#issuecomment-140585601。

sy5wg1nm

sy5wg1nm5#

在我的例子中,问题是在一个目录中的符号链接被复制到一个Dockerfile中。通过删除链接并重建映像解决了这个问题。

相关问题