Docker配置从私有仓库拉取镜像

news2024/9/25 6:28:49

修改Docker配置文件

修改docker的配置文件daemon.json,如果配置文件不存在则直接创建。

vim /etc/docker/daemon.json

文件内容如下,其中insecure-registries属性值“registry.luntek-inc.com”代表私有仓库的地址,你需要将registry.luntek-inc.com改成你自己的私有仓库地址,registry-mirrors配置的是国内的docker镜像仓库地址,让下载镜像速度更快

{
    "insecure-registries": [
        "registry.luntek-inc.com"
    ],
    "registry-mirrors": [
        "https://registry.docker-cn.com",
        "http://hub-mirror.c.163.com",
        "https://docker.mirrors.ustc.edu.cn"
    ]       
} 

编辑完成后重新加载配置文件并且重启docker

systemctl daemon-reload
systemctl restart docker

注:如果报如下错误说明daemon.json文件格式错误,请仔细检查空格或者逗号

Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.

docker重启完成后使用docker info指令查看docker配置的私有仓库地址是否生效

在这里插入图片描述


配置正确的DNS

这个根据自身情况确定,如果私有docker仓库的dns与本机电脑的dns一致则可以不配置,否则的话在执行docker pull 时会报如下错误

docker pull registry.luntek-inc.com:10443/prod/luntek-triplink-store:0.0.2
Error response from daemon: Get "https://registry.luntek-inc.com:10443/v2/": dial tcp: lookup registry.luntek-inc.com on 192.168.254.*****: no such host

如果出现如下错误,则需要先确认私有仓库的dns,然后在拉取镜像的电脑上配置DNS信息即可,查看私有仓库的DNS有三种方法
方法一
查看私有仓库电脑的dns配置文件

cat /etc/resolv.conf

在这里插入图片描述
方法二
查看私有仓库电脑的网卡文件

cd /etc/sysconfig/network-scripts/
ls
# 查看ifcfg-开头的网卡文件
cat ifcfg-enp4s0

在这里插入图片描述
方法三
查看局域网下相同电脑能连接的电脑
在这里插入图片描述

LZ最后是将自己windows的dns配置过去才可以,怀疑254.3可能是优先或者高层的dns,配置好dns后不再报错no such host


登录私有仓库docker账号

使用命令登录私有仓库docker账号

docker login -u admin -p YourPwd http://192.168.254.8:8080

http://192.168.254.8:8080为私有仓库地址
在这里插入图片描述

添加私有仓库地址

不添加的话在拉取镜像时会报如下错误

Error response from daemon: Get "https://****": x509: certificate signed by unknown authority

1、登陆私有仓库服务器,进入/etc/docker/certs.d/目录下,找到ca.crt证书

2、将该证书拷贝一份到目标主机(即使用docker pull主机)上,并放在/etc/docker/certs.d/下

3、重启docker服务

systemctl daemon-reload
systemctl restart docker

4、登陆该私有仓库docker login *******,输入用户名密码后,登陆成功便可以使用docker pull拉取镜像

登录成功后可以使用指令查看登录信息

cat /root/.docker/config.json

在这里插入图片描述


解决证书问题

正常到这里应该是可以直接拉镜像了如果不能的话可以参考一下
由于lz添加证书的方法不对所以导致一直无法正常docker pull文件,并且一直报如下的错

Error response from daemon: Get "https://registry.luntek-inc.com:10443/v2/": x509: certificate signed by unknown authority

方法一:将docker仓库的证书放到本地服务器

切到服务器端(docker仓库机器)默认证书地址cd /etc/docker/certs.d/,由于lz配置的时候放置在域名下,所以会有一些不同,根据自己情况而定。如果没有的话需要重新生成,然后将文件拷贝下来备用,此文件需要放到使用docker pull的机器上

在这里插入图片描述
本地电脑(docker pull的机器)上进行的操作

  • 安装ca-certificates
 yum -y install ca-certificates
  • 将ca.crt证书文件放入 /usr/share/pki/ca-trust-source/anchors
    在这里插入图片描述
  • 更新证书文件
update-ca-trust

在这里插入图片描述

如上命令执行完成后etc/ssl/certs/ca-bundle.crt 以及/etc/ssl/certs/ca-bundle.trust.crt就包含了新的自定义证书,可以使用指令查看tail -n20 /etc/ssl/certs/ca-bundle.crt
重启docker,再次从本地私有仓库拉镜像就可以成功

systemctl restart docker
docker pull registry.luntek-inc.com:10443/prod/luntek-triplink-store:0.0.2

镜像拉取成功
在这里插入图片描述

方法二:系统时间不同步

先使用date命令查看系统当前时间,如果明显有问题,就要用到另外一个工具:ntpdate,如果没有此命令,安装即可
ubuntu

apt install -y ntpdate

centos:

yum install -y ntpdate

更新同步时间

ntpdate cn.pool.ntp.org

再次使用date命令查看当前系统时间,确认没问题再拉取镜像

方法三:daemon.json文件配置有问题

证书的问题需要编辑 daemo.json 文件:vi /etc/docker/daemon.json
参考格式如下:

{
   "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"],
   "insecure-registries":[
      "172.xx.xxx.xxx:4433",   
      "reg-cloud.xxxxx.com"
   ]
}

重启docker

systemctl daemon-reload
systemctl restart docker

到这里基本上就能解决大部分的证书问题


余生还长、切勿惆怅

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JavaSE13-方法

目录 1.方法的基本用法 1.1.什么是方法 1.2.方法定义语法 1.3.方法调用的执行过程 1.4.实参和形参的关系 1.5.方法的返回值 2.方法重载 2.1.方法重载定义 2.2.代码示例 3.方法递归 3.1.方法递归定义 3.2.方法递归使用条件 3.3.递归与非递归优劣比较 3.4.递归执行…

[附源码]Nodejs计算机毕业设计基于网络C++实验管理系统Express(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置: Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分…

SpringBoot+Vue项目部门人事管理系统的设计与实现

文末获取源码 开发语言:Java 使用框架:spring boot 前端技术:JavaScript、Vue.js 、css3 开发工具:IDEA/MyEclipse/Eclipse、Visual Studio Code 数据库:MySQL 5.7/8.0 数据库管理工具:phpstudy/Navicat JD…

Vit 中的 Token 改进版本:Token Mreging: Your Vit But Faster 论文阅读笔记

Vit 中的 Token 改进版本:Token Mreging: Your Vit But Faster 论文阅读笔记一、Abstract二、引言三、相关工作3.1 有效的 Transformer3.2 Token 的减少3.3 Token 的联合四、Token 融合4.1 策略4.2 Token 相似性4.3 双边软匹配4.4 追踪 Token 的尺寸4.5 采用融合操作…

[附源码]计算机毕业设计Python餐馆点餐管理系统(程序+源码+LW文档)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

非零基础自学Golang 第11章 文件操作 11.3 处理JSON文件 11.3.2 解码JSON 11.4 小结

非零基础自学Golang 文章目录非零基础自学Golang第11章 文件操作11.3 处理JSON文件11.3.2 解码JSON11.4 小结第11章 文件操作 11.3 处理JSON文件 11.3.2 解码JSON 解码JSON会使用到Unmarshal接口,也就是Marshal的反操作。 func Unmarshal(data []byte, v interf…

30岁零基础没学历学Python怎么样?30岁学习Python晚吗?

30岁零基础没学历学Python怎么样?30岁学习Python晚吗?任何时候开始都不晚。30岁开始学习Python听起来年纪有点大,大家认为编程上了年纪学习编程语言是一个劣势。想在三十岁的时候通过学习Python来谋求一份IT程序员工作,则需要有一…

SQL笔记

SQL笔记 基本概述 数据库:保存有组织的数据的容器(通常是一个文件或一组文件)。容易混淆:人们通常用数据库这个术语来代表他们使用的数据库软件,这是不正确的,也因此产生了许多混淆。确切地说&#xff0c…

抖音关键词排名优化技巧,手把手教你怎样优化抖音关键词

云南百收科技有限公司 1、标题中出现关键词是关键词排名靠前的基础。 一篇文章中标题中一定要出现你想做的关键词,因为搜索引擎是是匹配标题的,如果你标题中没有关键词,是不会有排名的。而且还有一点,关键词的位置要靠近标题最前面…

python+pyqt5+mysql设计图书管理系统(1)- 数据库

一、概述 前面学习了python,pyqt和mysql的一些基础知识,接下来运用学习的东西进行实操制作一个项目--图书管理系统。 项目介绍:图书管理系统对于我们的图书管理来说非常重要,管理图书者可以通过系统有效的管理书籍,用户可以通过系统快速有效的找到自己需要的书籍。相比人工…

【目标跟踪】Kalman滤波目标跟踪【含Matlab源码 388期】

⛄一、获取代码方式 获取代码方式1: 通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。 获取代码方式2: 完整代码已上传我的资源:【目标跟踪】基于matlab Kalman滤波目标跟踪【含Matlab源…

聊一聊Unity的Test Framework应该怎么用

其实 Unity 很早就出了这个包,不过感觉基本上没什么人用,这么好的东西,本着让所有人都能了解的态度,今天就来聊聊它应该怎么使用。 第1步先安装它,或者给它升级到最新。 第2步打开工具的主窗口 支持分别在 PlayMode 或…

unity 2022大三期末大作业 3D立体魔方游戏(附下载链接)

unity 2022大三期末大作业 3D立体魔方游戏 这是本人的一个unity期末大作业,实现比较简单,unity版本是2018 的,导入即可运行无错误 下载链接 游戏可以一键打乱魔方的顺序,也可以一键还原等等功能,实现了魔方的使用功能…

手把手教你,从零开始搭建Spring Cloud Alibaba这份笔记太牛了

Spring Cloud Alibaba 是阿里巴巴提供的微服务开发一站式解决方案,是阿里巴巴开源中间件与 Spring Cloud 体系的融合。 Springcloud 和 Srpingcloud Alibaba 区别? SpringCloud: 部分组件停止维护和更新,给开发带来不便;SpringCl…

[附源码]Nodejs计算机毕业设计基于推荐算法的鞋服代购平台Express(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置: Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分…

【代码规范】lombok注解使用

【代码规范】lombok注解使用一、前言二、常用注解三、使用示例一、前言 上一篇文章(【JVM知识】插入式注解处理器实现java编程规范检测)总结了一下插入式注解,我们知道lombok插件是通过插入式注解处理器实现的,并且lombok插件在工…

版本控制器Git的使用。

目录 一、分布式版本工具 1、基本介绍 2、Git 安装配置 3、本地仓库和基础指令 二、分支 1、分支概述 2、解决冲突 三、Git远程仓库 1、常用的托管服务[远程仓库] 2、配置SSH公钥 3、操作远程仓库 4、解决合并冲突 三、IDEA中使用Git 1、在Idea中配置Git 2、ID…

什么是用户标签体系?

一.概况 标签:对某一类特定群体或对象的某项特征进行抽象分类和概括 标签体系:根据用户的“基本属性”,“行为特征”,“社交网络”,“心理特征” 和 “兴趣爱好”等,把个性化的用户,打上标签化…

入门:认识容器镜像

要启动容器最关键的就是镜像,我们来看看镜像相关的介绍。 初识容器镜像 首先我们来了解一下镜像的相关操作,比如现在我们希望把某个镜像从仓库下载到本地,这里使用官方的hello-world镜像: docker pull hello-world 只需要输入pull…

【CANN训练营第三季】2022年度第三季进阶班之AI目标属性编辑应用-数据预处理

了解华为的生态已经两年有余,用CANN做过两个模型的转换,跑过推理测试,但是感觉还是对CANN框架一知半解,恰巧看到2022年度第三季度训练营开班,赶紧报名参与上车。 本次课程是进阶版第一节正式课,主要讲解的…