问题情况

Docker版本在v23.0以后,只要Dockerfile中FROM的私库镜像不存在本地,就会报错:

# 我本地是v24.0.2版本Docker
[root@localhost ipd]# docker build . -t harbor.xxx.com.cn/test/bap:2.7.1
[+] Building 0.6s (3/3) FINISHED docker:default
=> [internal] load build definition from Dockerfile 0.2s
=> => transferring dockerfile: 1.05kB 0.0s
=> [internal] load .dockerignore 0.2s
=> => transferring context: 2B 0.0s
=> ERROR [internal] load metadata for harbor.xxx.com.cn/xxx/tomcat:8.5.90-jdk8-temurin 0.0s
------
> [internal] load metadata for harbor.xxx.com.cn/xxx/tomcat:8.5.90-jdk8-temurin:
------
Dockerfile:2
--------------------
1 | #指定基础镜像
2 | >>> FROM harbor.xxx.com.cn/xxx/tomcat:8.5.90-jdk8-temurin
3 | #指定环境变量,时区
4 | ENV TZ=Asia/Shanghai
--------------------
ERROR: failed to solve: harbor.xxx.com.cn/xxx/tomcat:8.5.90-jdk8-temurin: failed to do request: Head "https://harbor.xxx.com.cn/v2/xxx/tomcat/manifests/8.5.90-jdk8-temurin": tls: failed to verify certificate: x509: certificate signed by unknown authority

但我已经在 /etc/docker/daemon.json 中正确配置了 insecure-registries了,即能 pull 也能 push。

问题原因

Docker在v23.0版本及以后,使用了build-kit代替了旧的实现,目前build-kit对insecure-registries配置可能没做兼容,构建Dockerfile FROM镜像时未判断是私库,导致报错。

处理方式

目前(2023.07.21)办法就一个,在 ~/.bashrc/etc/profile 添加一行 export DOCKER_BUILDKIT=0,然后 source 一个修改的配置文件。

命令示例:

echo "export DOCKER_BUILDKIT=0" >> ~/.bashrc
source ~/.bashrc

后边如果有新的处理办法或者哪个版本解决这个问题,再来更贴。

本文引用:

【问题解决】docker版本v23.0后,构建Dockerfile中FROM私库镜像报错构建失败的更多相关文章

  1. ORACLE数据导入导出后新数据库中某些表添加操作报错[ORA-12899]

    由于项目需要,我在搭建了新的开发环境后,需要将之前环境中的ORACLE数据库导出,再导入到新的开发环境下.当导出导入完成后,使用数据库进行添加操作时 发现针对很多表的添加操作报错,具体报错原因描述为: ...

  2. docker拉取镜像报错:net/http: TLS handshake timeout.

    docker拉取镜像报错:net/http: TLS handshake timeout. 启动一个后台的busybox容器 [yunva@node1 network-scripts]$ docker ...

  3. docker启动镜像报错

    docker启动镜像报错: docker: Error response from daemon: driver failed programming external connectivity on ...

  4. Android程序能够构建和运行,但是报以下报错,为什么?

    安卓程序写完之后能够构建和运行,但是会报以下的错误.不知道原因为何?求大神解答. 网上说的是混淆编译的原因,不过程序没有开启混淆编译. Error:warning: Ignoring InnerCla ...

  5. 【Docker】涨姿势,深入了解Dockerfile 中的 COPY 与 ADD 命令

    参考资料:https://www.cnblogs.com/sparkdev/p/9573248.html Dockerfile 中提供了两个非常相似的命令 COPY 和 ADD,本文尝试解释这两个命令 ...

  6. nexus3.14.0版本linux环境安装、启动、搭建私库

    本文介绍的是nexus3.14.0版本在linux环境下安装.启动.搭建私库. nexus3以上的版本太新了,网上很少介绍安装细节的.据了解和2.X版本有所不同了. 1.前提 linux机器上需先安装 ...

  7. k8s 传参给docker env command、args和dockerfile中的entrypoint、cmd之间的关系

    [k8s]args指令案例-彻底理解docker entrypoint     需求: 搞个镜像,可以运行java -jar xxx.jar包,xxx.jar包名称要用参数传 思路1: 打对应运行ja ...

  8. docker 1.12.3版本搭建私有仓库,上传镜像报错:server gave HTTP response to HTTPS client”

    系统环境:centos7 docker版本: 1.12.3(注意版本,可能存在不同版本设置不同的情况) docker registry版本:2.4.1 问题: 成功安装docker registry, ...

  9. Docker 导入镜像报错:open /var/lib/docker/tmp/docker-import-743441288/redis-3.0.7/json: no such file or directory

    下载好了redis的tar包,然后导入redis镜像是报错open /var/lib/docker/tmp/docker-import-743441288/redis-3.0.7/json: no s ...

  10. docker运行镜像报错:"write init-p: broken pipe"

    docker: Error response from daemon: OCI runtime create failed: container_linux.go:344: starting cont ...

随机推荐

  1. C# 信号锁SemaphoreSlim

    关于锁,我们经常会使用lock object对象,进行资源访问的限制. 但,lock是有限制的,无法添加异步方法.编译器会报错. 下面推荐另一个类SemaphoreSlim,这是信号量的一个使用类.先 ...

  2. [双目视差] 立体匹配算法推理 - SGBM算法(二)

    文章目录 立体匹配算法推理 - SGBM算法(二) 一.SGM算法 二. 后处理 立体匹配算法推理 - SGBM算法(二) 一.SGM算法 SGM算法的全称为Semi-Global Matching, ...

  3. 【Azure 存储服务】Java Storage SDK 调用 uploadWithResponse 代码示例(询问ChatGTP得代码原型后人力验证)

    问题描述 查看Java Storage SDK,想找一个 uploadWithResponse  的示例代码,但是通过全网搜索,结果没有任何有帮助的代码.使用最近ChatGPT来寻求答案,得到非常有格 ...

  4. #AI 1分钟学会,利用AI制作思维导图 (NewBing&X-Mind )

    思维导图是一种有效的思考和学习工具,它可以帮助你整理和呈现信息,激发你的创造力和记忆力.但是,传统的思维导图软件往往需要你花费大量的时间和精力来设计和绘制,而且难以修改和分享.有没有一种更简单和智能的 ...

  5. 2020-11-17:java中,吞吐量优先和响应时间优先的回收器是哪些?

    福哥答案2020-11-17:对于吞吐量优先的场景,就只有一种选择,就是使用 PS 组合(Parallel Scavenge+Parallel Old ).对于响应时间优先的场景,在 JDK1.8 的 ...

  6. docker安装es,单机集群模式.失败。

    操作系统:mac系统. docker run -d --name es1 -p 9201:9200 -p 9301:9300 elasticsearch:7.14.0 docker run -d -- ...

  7. vue全家桶进阶之路5:DOM文档对象模型

    一.DOM对象 DOM,全称"DocumentObjectModel(文档对象模型)",它是由W3C组织定义的一个标准. 在前端开发时,我们往往需要在页面某个地方添加一个元素或者删 ...

  8. 数学建模 Excel的批量写入与批量导出

    数学建模中编程手们常常会被要求将大量的数据进行批量的预测操作,并写入某个文件中 Excel的批量导出数据,用循环就可以简单实现,例如 import pandas as pd for i in list ...

  9. Kubernetes 证书详解(鉴权)

    Kubernetes 证书详解(鉴权) 简介 上一篇 系统分析了 Kubernetes 集群中每个证书的作用和证书认证的原理.对于 Kube-apiserver,Kubelet 来说,它们都能提供 H ...

  10. 【python基础】日常知识点整理

    [三种方法调用] 1. 类中的方法区分为普通方法(self),静态方法(@staticMenthod),类方法@classMenthod,隐式参数(cls) <1> 普通方法:第一个参数 ...