如何修改Docke上传/下载并发线程数来解决docker:unexpectedEOF.错误问题
下载或上传镜像时,有可能因为网络问题导致报出docker: unexpected EOF.的错误,这时候可以考虑通过修改上传/下载并发线程数来解决
方法一:修改配置文件
sudo vim /etc/docker/daemon.json
这是示例(一个是修改上传数,一个是修改下载数,根据需要添加进daemon.json,如果不添加就是默认值,默认值查看方法见方法二)
{
"max-concurrent-uploads": 1,
"max-concurrent-downloads": 1
}
因为我上传没问题,而下载会碰到EOF的报错,因此只添加"max-concurrent-downloads":1这句,这是我的配置文件(有runtimes是因为安装了nvidia-docker)
{
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
},
"max-concurrent-downloads": 1
}
接下来重启docker
sudo systemctl daemon-reload && sudo systemctl restart docker
这样就成功修改了
方法二:使用dockerd命令修改参数
这种方法适用于手动启动docker daemon并进行调试,如果是平时正常使用,没有特殊要求,方法一会更方便、更适合
输入命令可以查看dockerd支持的参数
dockerd --help
在输出中可以找到默认下载数为3,上传数为5
--max-concurrent-downloads int Set the max concurrent downloads for each pull (default 3)
--max-concurrent-uploads int Set the max concurrent uploads for each push (default 5)
先停掉原先的docker服务
sudo systemctl stop docker
docker socket可停可不停
sudo systemctl stop docker.socket
现在修改下载数
dockerd --max-concurrent-downloads 1
运行后,不要按ctrl+c停止,因为停掉之后就等于docker停了,所以要在新的窗口中运行docker pull下载镜像,就能看到下载时一次只下载一个layer了
到此这篇关于修改Docke上传/下载并发线程数(解决docker: unexpected EOF.)的文章就介绍到这了,更多相关docke上传下载并发线程数内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341