Docker学习(二十四)报错速查手册

目录

    • 一、This error may indicate that the docker daemon is not running 报错
      • docker login 报错截图:
        • 原因分析:
        • 解决方案:
    • 二、Get "https://harbor.xxx.cn/v2/": EOF 报错
      • docker login 报错截图:
        • 原因分析:
        • 解决方案:
    • 三、500 Internal Server Error 报错
      • docker login 报错截图:
        • 原因分析:
        • 解决方案:
    • 四、invalid character '<' looking for beginning of value 报错
      • docker login 报错截图:
        • 原因分析:
        • 解决方案:
      • docker login 成功,但是 docker pull 报错截图:
        • 原因分析:
        • 解决方案:
    • 五、总结:万能解决方案

在解决问题前,要先树立两个思想:

  1. 无论是 docker login 命令还是 docker pull 命令,无非就是发送请求去 harbor 服务器获取数据。那么报错无非就是 网络问题 或者 接收的内容解析报错
  2. docker harbor 的 ui 页面和 docker logindocker pull 中的地址最终映射的是同一台机器的同一个端口。

一、This error may indicate that the docker daemon is not running 报错

docker login 报错截图:

在这里插入图片描述

完整报错信息:

error during connect: This error may indicate that the docker daemon is not running.: Post "http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.24/auth": open //./pipe/docker_engine: The system cannot find the file specified.

原因分析:

提示已经非常明显了,本地 docker 服务没有启动,或者启动失败。

解决方案:

启动本地 docker 服务。


二、Get “https://harbor.xxx.cn/v2/”: EOF 报错

docker login 报错截图:

在这里插入图片描述

原因分析:

这是因为无法解析 harbor 域名,或者解析后的 ip 和端口网络不通。可能是 harbor 地址写错了,需要重新核对一下域名和端口,比如我这里就是因为域名写错了,当前域名无法解析。

在这里插入图片描述

可以用 ping 域名 的方式判断是否可以解析域名,用 telnet ip 端口 判断网络是否开通。

解决方案:

harbor 地址修改为正确的域名和端口即可:

在这里插入图片描述

如果遇到了 500 Internal Server Error,参考下面的解决方案。


三、500 Internal Server Error 报错

docker login 报错截图:

在这里插入图片描述

原因分析:

我这里导致这个问题是nginx代理配置的问题,在我本地机器之间还多了一层 Nginx 进行转发,将 harbor.xxx.cn 域名转发到了 192.168.1.134:8080 下。

具体为什么中间经过一层 Nginx 转发之后就会报 500 Internal Server Error 问题,我这边还没有定位到。

解决方案:

修改本地 hosts,增加 192.168.1.134 harbor.xxx.cn 配置,直接解析到 Harbor 仓库所在服务器 ip。

在这里插入图片描述


四、invalid character ‘<’ looking for beginning of value 报错

出现这个问题有两种情况,一种是 docker login 的时候报这个错,一种是 docker login 不报错,但是 docker pull 报这个错。

我们先说第一种情况:

docker login 报错截图:

在这里插入图片描述

原因分析:

如果是 docker login 的时候就报错,是因为域名和端口错误导致的,比如我这里就是因为漏加了端口。那么细心的同学可能就会发现,为什么同样是域名和端口错误,为什么有的时候报 Get "https://harbor.xxx.cn/v2/": EOF 有的时候报 invalid character '<' looking for beginning of value 呢?

  • Get "https://harbor.xxx.cn/v2/": EOF:出现这类问题,说明域名无法解析,或者域名解析后的 ip 和端口网络不通。
  • invalid character '<' looking for beginning of value :出现这类问题,说明当前机器和目标地址的网络是通的,但是目标域名解析后ip对应服务器的 8080 端口是一个 html 页面,所以报了一个 < 开头无效字符的错。

解决方案:

将域名和端口修改正确后,如果继续报错 500 Internal Server Error,可以参考上面第二章通过配置 hosts 的解决方案。我这里增加端口后就可以正常登录了:

在这里插入图片描述

如果将域名和端口修改正确后,可以正常登录了,但是拉取失败,可以参考下面的内容。

docker login 成功,但是 docker pull 报错截图:

在这里插入图片描述

原因分析:

出现这类问题,如果确定地址没有写错的话,就是域名解析有问题了。虽然提示 Login Succeeded,但是实际并没有登录成功,可以填一个错误的账号密码试下,还是会成功的。

在这里插入图片描述

报错 invalid character '<' looking for beginning of value 说明网络是通的,但是目标域名解析后ip对应服务器的 8080 端口是一个 html 页面,所以报了一个 < 开头无效字符的错。

解决方案:

在本地配置 hosts,将域名和实际 ip 重新配置后,就可以正常拉取了。

配置格式:ip 域名

在这里插入图片描述


五、总结:万能解决方案

  1. docker -v 检查 docker 服务是否启动;

  2. ping 域名 检查域名是否可以正常解析;

  3. telnet ip 端口 检查网络是否通;

  4. 在 hosts 中追加配置 ip 域名;(不管第2步域名是否可以成功解析到都要配置看看)

    如果是 Linux 端,检查完以上 4 步基本就可以解决问题了。

  5. 如果使用的是 Windows 端的 Docker Desktop,则需要检查下设置中的 Docker Engine,需要给仓库地址设置 insecure-registries 白名单。

    例如:仓库 ip 地址:192.168.1.66:8080,仓库域名地址:harbor.acgkaka.cn:8080,则 Docker Engine 配置如下:registry-mirrors 为扩展镜像仓库,用于快速拉取镜像,选配)

    {
      "builder": {
        "gc": {
          "defaultKeepStorage": "20GB",
          "enabled": true
        }
      },
      "experimental": false,
      "features": {
        "buildkit": true
      },
      "insecure-registries": [
        "192.168.1.66:8080",
        "harbor.acgkaka.cn:8080"
      ],
      "registry-mirrors": [
        "https://docker.mirrors.ustc.edu.cn",
        "https://hub-mirror.c.163.com",
        "https://registry.docker-cn.com"
      ]
    }
    

整理完毕,完结撒花~ 🌻

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/61803.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用ubuntu-base制作根文件系统

1&#xff1a;ubuntu官网下载最小根文件系统&#xff1a; 放置到电脑的ubuntu中&#xff0c; Mkdir Ubuntu_rootfs Cd Ubuntu_rootfs Sudo tar –zxvf Ubuntu-bash-xxxxxx.tar.gz 2&#xff1a;电脑的ubuntu安装qemu搭建arm模拟系统 将/usr/bin/qemu-arm-static/(64位拷贝…

(黑客)自学笔记

一、自学网络安全学习的误区和陷阱 1.不要试图先成为一名程序员&#xff08;以编程为基础的学习&#xff09;再开始学习 行为&#xff1a;从编程开始掌握&#xff0c;前端后端、通信协议、什么都学。 缺点&#xff1a;花费时间太长、实际向安全过渡后可用到的关键知识并不多。…

Java基础面试题2

Java基础面试题 一、IO和多线程专题 1.介绍下进程和线程的关系 进程&#xff1a;一个独立的正在执行的程序 线程&#xff1a;一个进程的最基本的执行单位&#xff0c;执行路径 多进程&#xff1a;在操作系统中&#xff0c;同时运行多个程序 多进程的好处&#xff1a;可以充…

[webpack] 基本配置 (一)

文章目录 1.基本介绍2.功能介绍3.简单使用3.1 文件目录和内容3.2 下载依赖3.3 启动webpack 4.基本配置4.1 五大核心概念4.2 基本使用 1.基本介绍 Webpack 是一个静态资源打包工具。它会以一个或多个文件作为打包的入口, 将我们整个项目所有文件编译组合成一个或多个文件输出出去…

macbook怎么卸载软件?2023年最新全新解析macbook电脑怎样删除软件

macbook怎么卸载软件&#xff1f;2023年最新全新解析macbook电脑怎样删除软件。关于Mac笔记本如何卸载软件_Mac笔记本卸载软件的四种方法的知识大家了解吗&#xff1f;以下就是小编整理的关于Mac笔记本如何卸载软件_Mac笔记本卸载软件的四种方法的介绍&#xff0c;希望可以给到…

LeetCode 热题 100 JavaScript--206. 反转链表

/*** Definition for singly-linked list.* function ListNode(val, next) {* this.val (valundefined ? 0 : val)* this.next (nextundefined ? null : next)* }*/ /*** param {ListNode} head* return {ListNode}*/1、逐个断键&#xff0c;将后一个节点放到前面 …

网络可靠性之链路聚合

网络的可靠性 网络的可靠性指当设备或者链路出现单点或者多点故障时保证网络服务不间断的能力网络的可靠性是可以从单板、设备、链路多个层面实现。 链路聚合 以太网链路聚合&#xff1a; 通过将多个物理接口捆绑成为一个逻辑接口&#xff0c;可以再不进行硬件升级的条件下&a…

neo4j入门实例介绍

使用Cypher查询语言创建了一个图数据库&#xff0c;其中包含了电影《The Matrix》和演员Keanu Reeves、Carrie-Anne Moss、Laurence Fishburne、Hugo Weaving以及导演Lilly Wachowski和Lana Wachowski之间的关系。 CREATE (TheMatrix:Movie {title:The Matrix, released:1999,…

LeetCode-Java(06)

24. 两两交换链表中的节点 非递归解法 class Solution {public ListNode swapPairs(ListNode head) {ListNode pre new ListNode(0);pre.next head;ListNode temp pre;while(temp.next ! null && temp.next.next ! null) {ListNode start temp.next;ListNode end …

Android平台GB28181设备接入端如何降低资源占用和性能消耗

背景 我们在做GB28181设备接入模块的时候&#xff0c;考虑到好多设备性能一般&#xff0c;我们一般的设计思路是&#xff0c;先注册设备到平台侧&#xff0c;平台侧发calalog过来&#xff0c;获取设备信息&#xff0c;然后&#xff0c;设备侧和国标平台侧维持心跳&#xff0c;…

如何在Spring MVC中使用@ControllerAdvice创建全局异常处理器

文章目录 前言一、认识注解&#xff1a;RestControllerAdvice和ExceptionHandler二、使用步骤1、封装统一返回结果类2、自定义异常类封装3、定义全局异常处理类4、测试 总结 前言 全局异常处理器是一种 &#x1f31f;✨机制&#xff0c;用于处理应用程序中发生的异常&#xff…

HCIA---OSI/RM--开放式系统互联参考模型

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 一.OSI--开放式系统互联参考模型简介 OSI开放式系统互联参考模型是一种用于计算机网络通信…

C# Blazor 学习笔记(11):路由跳转和信息传值

文章目录 前言路由跳转测试用例路由传参/路由约束想法更新&#xff1a;2023年8月4日 前言 Blazor对路由跳转进行了封装。 ASP.NET Core Blazor 路由和导航 NavigationManager 类 本文的主要内容就是全局的跳转 路由跳转 路由跳转就要用到NavigationManager 类。 其实最常用…

解密HTTP代理爬虫中的IP代理选择与管理策略

在当今数据驱动的世界中&#xff0c;HTTP代理爬虫作为一项重要的数据采集工具&#xff0c;其成功与否往往取决于IP代理的选择与管理策略。作为一家专业的HTTP代理产品供应商&#xff0c;我们深知IP代理在数据采集中的重要性。在本文中&#xff0c;我们将分享一些关于HTTP代理爬…

RabbitMQ-API

这里写目录标题 Hello word 模式添加依赖生产者消费者获取信道工具类 Work Queues模式消费者代码 C1开启多线程运行启动 消费者代码 C2生产者代码 消息应答自动应答消息应答的方法Multiple 的解释消息自动重新入队消息手动应答代码消费者API 队列持久化消息持久化不公平分发消息…

一文带你深入了解JMM(Java内存模型)

JMM&#xff08;Java内存模型&#xff09;详解 为什么要有内存模型&#xff1f; 要想回答这个问题&#xff0c;我们需要先弄懂传统计算机硬件内存架构。 硬件内存架构 &#xff08;1&#xff09;CPU 去过机房的同学都知道&#xff0c;一般在大型服务器上会配置多个CPU&…

edge://settings/defaultbrowser default ie

Microsoft Edge 中的 Internet Explorer 模式 有些网站专为与 Internet Explorer 一起使用&#xff0c;它们具有 Microsoft Edge 等新式浏览器不支持的功能。 如果你需要查看其中的某个网站&#xff0c;可使用 Microsoft Edge 中的 Internet Explorer 模式。 大多数网站在新…

数据库数据恢复-Oracle数据库文件出现坏块的数据恢复案例

Oracle数据库故障&初检&分析&#xff1a; 打开Oracle数据库时报错&#xff0c;报错信息&#xff1a;“system01.dbf需要更多的恢复来保持一致性&#xff0c;数据库无法打开”。用户急需恢复zxfg用户下的数据。 出现上述报错的可能原因包括&#xff1a;控制文件损坏、数…

微信小程序如何引入Iconfont

在小程序中引入 Iconfont 可以通过以下步骤进行操作&#xff1a; 打开 Iconfont 网站&#xff08;https://www.iconfont.cn/&#xff09;并登录账号&#xff0c;创建一个项目并添加所需的图标到项目中。 在项目中选中需要使用的图标&#xff0c;点击右上角的 “下载代码” 按钮…

TBB库中实现协程(coroutine)的源码说明

源码请见: https://github.com/oneapi-src/oneTBB/blob/master/src/tbb/co_context.h 在windows系统&#xff0c;TBB(也就是intel 的 oneTBB库)&#xff0c;通过windwos fiber(纤程)来实现协程(coroutine)。 创建一个协程,代码很简洁: inline void create_coroutine(corouti…