【Docker】修改Docke上传/下载并发线程数(解决docker: unexpected EOF.)

简介: 下载或上传镜像时,有可能因为网络问题导致报出docker: unexpected EOF.的错误,这时候可以考虑通过修改上传/下载并发线程数来解决

下载或上传镜像时,有可能因为网络问题导致报出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.socker

现在修改下载数

dockerd --max-concurrent-downloads 1

运行后,不要按ctrl+c停止,因为停掉之后就等于docker停了,所以要在新的窗口中运行docker pull下载镜像,就能看到下载时一次只下载一个layer了

目录
相关文章
|
9月前
|
Java API 调度
从阻塞到畅通:Java虚拟线程开启并发新纪元
从阻塞到畅通:Java虚拟线程开启并发新纪元
447 83
|
9月前
|
存储 Java 调度
Java虚拟线程:轻量级并发的革命性突破
Java虚拟线程:轻量级并发的革命性突破
477 83
|
11月前
|
机器学习/深度学习 消息中间件 存储
【高薪程序员必看】万字长文拆解Java并发编程!(9-2):并发工具-线程池
🌟 ​大家好,我是摘星!​ 🌟今天为大家带来的是并发编程中的强力并发工具-线程池,废话不多说让我们直接开始。
396 0
|
11月前
|
设计模式 运维 监控
并发设计模式实战系列(4):线程池
需要建立持续的性能剖析(Profiling)和调优机制。通过以上十二个维度的系统化扩展,构建了一个从。设置合理队列容量/拒绝策略。动态扩容/优化任务处理速度。检查线程栈定位热点代码。调整最大用户进程数限制。CPU占用率100%
603 0
|
6月前
|
设计模式 缓存 安全
【JUC】(6)带你了解共享模型之 享元和不可变 模型并初步带你了解并发工具 线程池Pool,文章内还有饥饿问题、设计模式之工作线程的解决于实现
JUC专栏第六篇,本文带你了解两个共享模型:享元和不可变 模型,并初步带你了解并发工具 线程池Pool,文章中还有解决饥饿问题、设计模式之工作线程的实现
350 2
|
11月前
|
存储 缓存 安全
JUC并发—11.线程池源码分析
本文主要介绍了线程池的优势和JUC提供的线程池、ThreadPoolExecutor和Excutors创建的线程池、如何设计一个线程池、ThreadPoolExecutor线程池的执行流程、ThreadPoolExecutor的源码分析、如何合理设置线程池参数 + 定制线程池。
JUC并发—11.线程池源码分析
|
开发工具 虚拟化 git
自学软硬件第755 docker容器虚拟化技术youtube视频下载工具
docker容器虚拟化技术有什么用?怎么使用?TubeTube 项目使用youtube视频下载工具
|
Ubuntu NoSQL Linux
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
676 6
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
|
关系型数据库 MySQL Docker
docker pull mysql:8.0.26提示Error response from daemon: Get “https://registry-1.docker.io/v2/“: EOF错误
docker pull mysql:8.0.26提示Error response from daemon: Get “https://registry-1.docker.io/v2/“: EOF错误
4722 9

热门文章

最新文章