【k8s】Error response from daemon: Get https://192.168.22.234/v2/: dial tcp 192.168.22.234:443: connec

博客详细记录了一次Harbor与K8s集群同时出现无法访问的问题,通过检查错误信息、尝试本地访问及检查docker-compose运行状态,最终通过重启Docker与Harbor服务解决了问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【起因】

在这里插入图片描述
  番茄配蔬菜!!! 起初Dashborad无法访问,在重启了相关的节点之后,登录进来发现,你怎么成这样了呢,大兄滴儿~~

【问题】

  仔细看一下报错信息,我们可以找到错误原因:Failed to pull image … tcp 192.168.22.234:80:connect no route to host,这不是Harbor无法访问么。。。这几天,不仅k8s“挂”了,Harbor也不甘心,也“挂”了。
在这里插入图片描述
(1)网页无法访问,那就用docker内部访问一下docekr login reg.dynamicharbor.com
在这里插入图片描述
错误信息:
Error response from daemon: Get https://192.168.22.234/v2/: dial tcp 192.168.22.234:443: connect: no route to host

(2)查看docker-compose运行情况

    docker-compose ps

在这里插入图片描述
错误信息:ERROR:Couldn’t connect to Docker daemon at http+docker://localhost - is it running?

(3)查看docker的运行情况

   docker ps

在这里插入图片描述
错误信息:Cannot connect to Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

【解决办法】

  错误信息都给我的暗示都是:它没在运行? 无奈,重启呗!!!在部署Harbor的机器上:依次输入以下命令

$ systemctl daemon-reload
$ systemctl restart docker
$ docker-compose down -v
$ docker-compose up -d

在这里插入图片描述
在重启的过程中,我还担心push镜像会不会给我删除了。嗯,结果还好。
在这里插入图片描述
  再来查看Dashborad上的服务情况,正常的服务都已经运行正常了。(剩下那一个,ingress插件部署的有问题吧,应该之前就没有解决呢还。)
在这里插入图片描述
大兄滴儿,也只能先拯救到你这里了。下午再继续解决其它的问题吧。

<think>好的,我现在要解决用户遇到的Docker daemon连接被拒绝的问题,具体错误是连接https://192.168.192.132/v2/时出现“dial tcp 192.168.192.132:443: connect: connection refused”。首先,我需要分析可能的原因,并参考用户提供的几个引用内容来寻找解决方案。 首先,根据引用[1]中的情况,类似的错误是Docker守护进程无法连接到指定的地址和端口。可能的原因包括Docker服务未运行、目标地址端口未开放或者防火墙设置阻止了连接。用户提到的是v2接口,可能涉及到私有镜像仓库的访问问题,比如证书问题或者配置错误。 接下来看引用[2],其中提到通过在docker-compose.yml中指定IPv4地址来绑定端口,解决了连接问题。这说明网络配置,特别是绑定到正确的IP和端口,可能是一个解决方法。可能需要检查Docker的配置,确保服务绑定到正确的接口,并且端口映射正确。 引用[3]提到在Dockerfile中下载docker-compose和maven时遇到问题,连接raw.githubusercontent.com失败。这可能与DNS解析或网络代理设置有关。虽然用户当前的问题不同,但可以推测网络连通性问题可能是共同因素,需要检查网络配置、代理设置或DNS是否正确。 现在,针对用户的具体问题,可能的解决步骤包括: 1. **检查Docker服务状态**:确认Docker守护进程是否正在运行。如果服务未启动,自然无法处理请求。使用`systemctl status docker`或相应的命令检查服务状态,必要时重启服务。 2. **验证目标地址和端口可达性**:使用`telnet 192.168.192.132 443`或`curl -v https://192.168.192.132/v2/`测试目标地址的443端口是否开放,并响应HTTP请求。如果无法连接,可能是目标服务未运行或防火墙阻止了连接。 3. **检查私有仓库配置**:如果访问的是私有镜像仓库,需要确认仓库是否配置正确,是否启用了TLS,并且客户端拥有正确的证书。有时需要将仓库地址添加到Docker的insecure-registries配置中,或者配置信任的CA证书。 4. **调整Docker守护进程配置**:修改Docker的daemon.json文件,确保绑定到正确的IP地址,或者设置代理、DNS等参数。例如,设置`insecure-registries`或配置网络选项。 5. **检查防火墙和SELinux设置**:确保防火墙没有阻止Docker相关的端口,尤其是443和80端口。在某些系统上,SELinux可能会限制网络访问,需要调整策略或暂时禁用进行测试。 6. **查看Docker日志**:通过`journalctl -u docker.service`或`docker info`等命令查看详细日志,寻找更具体的错误信息。 在整合这些步骤时,需要按照逻辑顺序排列,先检查基础服务状态,再逐步深入网络配置和外部服务状态。同时,结合用户提供的引用中的解决方法,如手动指定IPv4绑定,可能需要应用到docker-compose文件或Docker守护进程配置中。 另外,用户的问题可能与引用[2]中的情况类似,即Docker默认绑定到IPv6而导致问题,因此强制绑定到IPv4可能会解决。需要检查Docker的网络配置,确保端口正确映射到IPv4地址,避免IPv6相关的问题。 最后,确保用户按照步骤操作后,能够逐一排除可能的原因,最终解决连接被拒绝的问题。</think>### 解决Docker连接被拒绝问题的步骤 #### 1. **确认Docker服务状态** - 确保Docker守护进程正常运行: ```bash systemctl status docker # 检查状态 systemctl restart docker # 重启服务 ``` - 若服务未启动,可能需重新安装或修复Docker环境。 #### 2. **验证目标地址和端口可达性** - 使用`curl`或`telnet`测试目标地址的443端口: ```bash curl -v https://192.168.192.132/v2/ # 检查响应详情 telnet 192.168.192.132 443 # 测试端口连通性 ``` - 若无法连接,检查目标服务是否运行(如私有镜像仓库是否启动)[^1]。 #### 3. **检查私有仓库配置** - 若访问私有仓库,需配置TLS证书或添加到`insecure-registries`: ```json // 修改/etc/docker/daemon.json { "insecure-registries": ["192.168.192.132:443"] } ``` - 重启Docker服务使配置生效: ```bash systemctl restart docker ``` #### 4. **调整网络绑定设置** - 在`docker-compose.yml`中强制绑定到IPv4(参考引用[2]): ```yaml services: app: ports: - "0.0.0.0:443:443/tcp" # 显式指定IPv4 ``` #### 5. **检查防火墙和SELinux** - 开放防火墙端口: ```bash firewall-cmd --add-port=443/tcp --permanent # CentOS/Fedora ufw allow 443/tcp # Ubuntu/Debian ``` - 临时禁用SELinux测试: ```bash setenforce 0 # 临时关闭 ``` #### 6. **查看Docker日志排查细节** - 通过日志定位具体错误: ```bash journalctl -u docker.service -n 100 # 查看最新100条日志 ``` ---
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值