You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS虚拟机推送Docker镜像至私有云遇connection reset by peer报错求助

Docker镜像推送私有仓库遇connection reset by peer的解决思路

我来帮你梳理下这个问题的排查方向,这种连接重置的错误大多和网络连通性、私有仓库配置或者Docker的安全设置有关,给你几个具体的解决步骤:

  • 先确认网络连通性
    在你的CentOS虚拟机上,先测试和私有仓库的网络是否能正常通信:

    nc -zv 172.16.19.148 5000
    # 或者用telnet
    telnet 172.16.19.148 5000
    

    如果连接失败,优先排查网络问题:

    • 检查两台机器是否在同一网段,或者路由是否可达;
    • 查看私有仓库所在机器的防火墙/安全组,确认5000端口已经开放(CentOS可用firewall-cmd --list-ports检查,必要时用firewall-cmd --add-port=5000/tcp --permanent && firewall-cmd --reload开放);
    • 确认私有仓库的服务是否正常运行(比如用docker ps查看容器状态)。
  • 检查Docker对非HTTPS仓库的安全配置
    如果你的私有仓库是HTTP协议(没有配置SSL证书),Docker默认会拒绝向这类仓库推送镜像,这是很常见的坑。需要修改/etc/docker/daemon.json添加不安全仓库配置:

    {
      "max-concurrent-uploads": 1,
      "insecure-registries": ["172.16.19.148:5000"]
    }
    

    保存后重启Docker服务:

    systemctl restart docker
    

    之后再尝试推送镜像。

  • 验证私有仓库的路径配置
    如果你用的是Nexus这类仓库管理工具,要确认你推送的路径dockercitoolstack_nexus是否已经在Nexus中创建了对应的Docker hosted仓库,并且仓库的路径配置和你标签里的一致。如果仓库不存在,也可能触发异常的连接重置错误。

  • 排查系统层面的限制

    • 临时关闭SELinux试试:setenforce 0,如果关闭后能正常推送,说明SELinux阻止了Docker的网络请求,后续可以配置SELinux规则允许Docker访问该仓库;
    • 检查系统的网络参数,比如sysctl net.ipv4.tcp_syncookies是否开启,或者有没有TCP连接数限制,必要时调整相关参数。
  • 查看日志定位细节
    查看私有仓库的日志(比如Nexus容器日志:docker logs <你的Nexus容器ID>)和Docker服务日志(journalctl -u docker.service),里面会有更详细的错误信息,能帮你精准定位问题根源。

内容的提问来源于stack exchange,提问作者guguli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:24:07