K8s: 公有镜像中心和私有镜像中心的搭建

公有镜像中心的搭建和使用


1 )在 官方docker镜像中心推送

  • 在 hub.docker.com 上注册账号 (国内一般访问不了,原因不多说)

  • 找到 Create Repository 按钮就行仓库的创建

  • 这样就在官方创建了一个仓库,比如地址为: xx/y-y

    • xx 是我的账户名
    • y-y 是刚创建的仓库名
  • 现在,我将本地的docker镜像,推送到这个仓库里

    • 没有登录过,先使用 docker login 进行登录
    • 假设本地的 nginx:latest 镜像,现在我要对其进行打一个新的tag
    • $ docker tag nginx xx/y-y:latest
    • 之后,将其推送到远程
    • $ docker push xx/y-y:latest
  • 如果 hub.docker.com 在国内无法访问,可以在阿里云上创建 docker hub

  • 为官方docker镜像中心加速

  • 配置国内 Docker 镜像源 $ vi /etc/docker/daemon.json

    {"registry-mirrors": ["https://registry.docker-cn.com"],"live-restore": true
    }
    
  • 配置之后,需要重启 $ systemctl restart docker

2 )在阿里云docker镜像中心搭建

  • 在阿里云控制台,选择 容器镜像服务
  • 为何选择阿里云,因为当你下载的时候,会走cdn来加速
  • 进入实例列表,有两种,个人版和企业版本
  • 可以选择个人版实验一下,创建后,在 仓库管理/镜像仓库即可进行管理

搭建私有镜像中心

  • 我们现在用的私有docker镜像中心是JCR,也就是 JFrog Container Registry
  • 这个和开源的harbor有点类似,但是这个比harbor更加的好用,更加的强大
  • 因为它不仅能管这个通用仓库,还有helm仓库,harbor是没有通用类型仓库的

整体架构图如下

  • docker client 连接的是 JCR, JCR 一般连的是 docker.io/library 这个远程
  • JCR 是部署在本地私有环节中的, JCR 对外除了连接官方的,还可以连接阿里云容器服务
  • JCR 在这里做了一个远程代理的作用,JCR里面可以有多种不同的仓库

安装 JCR (JFrog Container Registry)

  • 在 master 节点上执行以下命令
    • 设置环境变量
      • $ vi ~/.bash_profile 增加 JFROG_HOME 环境变量
        export JFROG_HOME=~/jfrog
        
      • $ source ~/.bash_profile 生效
    • 设置目录和文件
      • $ sudo mkdir -p $JFROG_HOME/artifactory/var/etc
      • $ cd $JFROG_HOME/artifactory/var/etc
      • $ sudo touch ./system.yaml
      • $ sudo chown -R 1030:1030 $JFROG_HOME/artifactory/var
      • $ sudo chmod -R 777 $JFROG_HOME/artifactory/var
    • 运行docker
      • docker 镜像可以先行下载,比较大
      • $ docker pull releases-docker.jfrog.io/jfrog/artifactory-jcr:latest
        • 注意,这个镜像在 Mac 上正常运行,在 centos 9 上会有问题
        • 如果在 c9 上运行,按照官方下载 jcr 版本的 Linux版自行安装, 不再赘述
      • $ docker run --name artifactory-jcr -v $JFROG_HOME/artifactory/var/:/var/opt/jfrog/artifactory -d -p 8081:8081 -p 8082:8082 releases-docker.jfrog.io/jfrog/artifactory-jcr:latest
      • $ sudo docker ps | grep jcr 查看运行状态
      • 在Mac客户端浏览器上访问master节点上的服务 master.k8s:8081
        • 在访问前,可能需要先等一会儿

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FANUC机器人SOCKET连接指令编写

一、创建一个.KL文件编写连接指令 创建一个KL文本来编写FANUC机器人socket连接指令 二、KAREL指令代码 fanuc机器人karel编辑器编辑的karel代码如下: PROGRAM SM_CON %COMMENT SOCKET连接 %STACKSIZE 4000 --堆栈大小 %INCLUDE klevccdfVAR status,data_type,in…

微服务之分布式理论概述

一、分布式技术相关的理论 CAP理论 CAP定理(CAP theorem),⼜被称作布鲁尔定理(Eric Brewer),1998年第⼀次提出. 最初提出是指分布式数据存储不可能同时提供以下三种保证中的两种以上: (1) ⼀致性(Consistency): 每次读取收到的信息都是最新的; (2) …

Appium一本通

Appium介绍 概念:Appium是一个移动App(手机应用)自动化工具。 用途:重复性任务、爬虫、自动化测试。 特点:开源免费、多平台支持(ios\android)、多类型支持(native\webview)、类selenium支持多语言(java\python\js\ruby) Appium原理 三个主…

表情识别 | LBP+SVM实现脸部动态特征的人脸表情识别程序(Matlab)

表情识别 | LBPSVM实现脸部动态特征的人脸表情识别程序(Matlab) 目录 表情识别 | LBPSVM实现脸部动态特征的人脸表情识别程序(Matlab)预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1 运行环境 程序运行在Windows系统下&am…

补充centos7软件包的方式/编译安装源码包软件/企业案例/linux进程管理/企业管理进程系列命令(企业经验)--8820字详谈

cenros7软件包的安装方式 软件包分类安装方式优缺点rpm包软件开发商编译打包,安装简单,快速软件版本可能偏低,安装路径是固定好的源码包自己手动编译安装并且复杂软件爸爸随意选,可以定制安装路径二进制包解压就可以使用不能进行…

从单按键状态机思维扫描引申到4*4矩阵按键全键无冲扫描,一步一步教,超好理解,超好复现(STM32程序例子HAL库)

目前大部分代码存在的问题 ​ 单次只能对单个按键产生反应;多个按键按下就难以修改;并且代码耦合度较高,逻辑难以修改,对于添加长按,短按,双击的需求修改困难。 解决 16个按键按下无冲,并且代…

【八大排序(二)】选择排序与堆排序

❣博主主页: 33的博客❣ ▶️文章专栏分类:八大排序◀️ 🚚我的代码仓库: 33的代码仓库🚚 🫵🫵🫵关注我带你了解更多排序知识 目录 1.前言2.选择排序2.1基本思想2.2画图理解2.3单向选择排序代码实现2.4双向选择排序代码…

【Linux网络】FTP服务

目录 一、FTP简介 1.FTP-文件传输协议 2.FTP的两种模式 二、安装配置FTP 1.安装环境 2.对文件的操作 3.切换目录 4.设置匿名用户 5.图形化界面登录 6.白名单与黑名单 重点与难点 一、FTP简介 1.FTP-文件传输协议 FTP是FileTransferProtocol(文件传输协…

VIO外参标定方法总结

一、前言 VIO外参标定是指相机和IMU之间的转移矩阵的确定,包括33的旋转矩阵和3维平移向量。整体上分为离线标定和在线标定两类方法,这篇文章做一个总结,主要是经典的方法,记录其思想。 二、博文链接 1、离线标定方法 最基本的…

如何在TestNG中忽略测试用例

在这篇文章中,我们将讨论如何在TestNG中忽略测试用例。TestNG帮助我们忽略使用Test注释的情况,我们可以在不同的级别上忽略这些情况。 首先,只忽略一个测试方法或测试用例。第二,忽略一个类及其子类中的所有情况。第三个是&#…

ARCGIS PRO3 三维模型OSGB转SLPK场景数据集

1.前言 因项目工作,需要将三维模型发布到arcgisserver上,但arcgisserver只支持slpk格式的模型,于是我开启了漫长的三维模型格式转换之旅,在这里记录下本人踩过的坑。 2.三维模型数据情况 2.1 模型大小:在20GB以上&a…

ITMS-90426: Invalid Swift Support

原文 Please correct the following issues and upload a new binary to App Store Connect. ITMS-90426: Invalid Swift Support - The SwiftSupport folder is missing. Rebuild your app using the current public (GM) version of Xcode and resubmit it. 解决方式 ITMS-…