搭建私有仓库的两种方式:

Registry

Harbor

 一、registry的搭建

docker官方提供了一个搭建私有仓库的镜像registry,只需下载镜像,运行容器并暴露5000端口即可。

registry服务默认会将上传的镜像保存在容器的 /var/lib/registry,我们将主机的 /opt/registry目录挂载到该目录,即可实现将镜像保存到主机的 /opt/registry目录了。

浏览器访问 http://192.168.100.107:5000/v2,出现下面情况说明registry运行正常。

验证:

通过推送镜像到registry,来验证一下。

查看本地镜像。

给镜像打标签。

[root@dokcer ~]# [root@dokcer ~]# docker tag mysql:latest localhost:5000/mysql:666    标签格式:server端 ip + 端口 + 镜像名(必须)

  

通过docker push命令将镜像推送到远程仓库。

      访问http://192.168.100.107:5000/v2/_catalog查看私有仓库,就可以看到刚刚上传的镜像了。

打开192.168.100.102,从102往107推送镜像。

102使用docker下载redis镜像。

给redis打标签并查看。

往107上推送redis镜像。

报错提示 不支持http只支持https 解决方法如下:

在102上执行

{
     "registry-mirrors": ["https://w4uieobw.mirror.aliyuncs.com"],
     "insecure-registries": ["192.168.100.107:5000"]
  }

配置完重启docker生效。

再次推送。

推送成功后访问http://192.168.100.107:5000/v2/_catalog,可以看到我们往仓库推送的nginx镜像。

二、搭建harbor私有镜像仓库

  什么是Harbot?

VMware的开源项目https://github.com/vmware/harbor

harbor可帮助用户迅速搭建企业级的注册服务。它提供了管理图形界面,基于角色的访问控制(Role Based Access Control),镜像远程复制同步,AD/lDAP集成,以及审计日志等企业用户需求的功能,同时还 原生支持中文。

组件                                作用
  Proxy    通过一个前置的反向代理统一接收浏览器、Docker客户端的请求,并将请求转发给后端不同的服务
  Registry    (核心组件)负责储存Docker镜像,并处理docker push/pull命令
  Core services    Harbor的核心功能, 包括UI、webhook、 token服务
  Database    为core services提供数据库服务
  Log collector    负责收集其他组件的log,供日后进行分

安装部署前置条件

  • 在安装harbor的服务器上先安装docker (过程略)

下载并解压harbor    下载:https://github.com/goharbor/harbor/releases/tag/v1.7.5

[root@dokcer ~]# tar xf harbor-offline-installer-v1.7.5.tgz -C /usr/local/

安装docker-compse

wget "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -O /usr/local/bin/docker-compose

安装harbor

         ## 编辑该文件

          ## hostname修改为本机IP

         ## 安装harbor

从102往107上传镜像

  ## 可以看到仓库上已经有了

   ## 107本地查看镜像,此时无tomcat:666

          ## 从仓库拉取镜像

     ##  再次查看,拉取成功。

Docker仓库--registry与harbor的更多相关文章

  1. docker简单介绍---部署私有docker仓库Registry

    1. 关于Registry 官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.但是,有时候,我们的使用场景需要我们拥有一个私有 ...

  2. docker仓库之分布式harbor (一)

    1.harbor介绍 harbor是一个用于存储和分发docker镜像的企业级Registry服务器,由VMware开源.其通过添加一些企业必须的功能特性,例如安全,标识和管理,扩展了开源docker ...

  3. 搭建Harbor企业级docker仓库

    搭建Harbor企业级docker仓库 一.Harbor简介 1.Harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如 ...

  4. docker仓库harbor搭建

    1.安装docker-compose [root@docker02 ~]# yum install epel-release [root@docker02 ~]# pip install docker ...

  5. Docker以https访问Harbor私有仓库(二)

    1 说明 前文Centos7搭建Harbor私有仓库(二)中,我们以https方式搭建了Harbor,本篇我们主要配置Docker以https方式访问Harbor私有仓库 2 Docker配置 2.1 ...

  6. 《Docekr入门学习篇》——Docker仓库harbor

    Harbor Harbor仓库介绍 我们在日常Docker容器使用和管理过程中,渐渐发现部署企业私有仓库往往是很有必要的, 它可以帮助你管理企业的一些敏感镜像, 同时由于Docker Hub的下载速度 ...

  7. docker仓库之harbor高可用 (三)

    基于上一篇部署完成了企业级仓库harbor的部署,今天我们来聊聊什么是harbor的高可用 Harbor 支持基于策略的 Docker 镜像复制功能,这类似于 MySQL 的主从同步,其可以实现不同的 ...

  8. docker配置私有镜像仓库-registry和hyper/docker-registry-web

    1.前言️​ Docker hub是远程仓库,是国外的,push pull速度特别慢,尤其是网速不好的时候,页面都点不进去,官网 但是可以配置阿里云镜像加速哦: 因此搭建一个私有的镜像仓库用于管理我们 ...

  9. Docker私有仓库 Registry中的镜像管理

    这里主要介绍Registry v2的版本 查看Registry仓库中现有的镜像: # curl -XGET http://10.0.30.6:5000/v2/_catalog# curl -XGET ...

随机推荐

  1. idea环境下SpringBoot Web应用引入JSP

    1. 环境 开发环境:idea2019.3 jkd版本:1.8 springboot版本:2.6.2 2. 引入JSP的步骤 2.1 新建工程,引入依赖 这里只是解析jsp,因此只需要引入spring ...

  2. 基于Appium的APP自动化测试基础--美团APP的实例

    转:https://blog.csdn.net/Tigerdong1/article/details/80159156 前段时间用一种流行语言,一个主流工具,一个实用框架,写了一个美团app自动化测试 ...

  3. golang中的RPC开发-2

    RPC简介 远程过程调用(Remote Procedure Call,RPC)是一个计算机通信协议 该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程 如果 ...

  4. 20个 CSS 快速提升技巧

    作者:web秀 http://www.javanx.cn/20190321/css-skill/ 本文涵盖了20个css技巧,可以解决许多工作中常见的问题. 1.使用CSS重置(reset) css重 ...

  5. macOS Monterey 12.12.2 (21D49) 正式版 ISO、IPSW、PKG 下载

    本站下载的 macOS Monterey 软件包,既可以拖拽到 Applications(应用程序)下直接安装,也可以制作启动 U 盘安装,或者在虚拟机中启动安装. 2022 年 1 月 27 日,m ...

  6. Vue+webpack配置实现多页面应用开发

    为什么要配置多页面开发? · 由于单页面应用不利于SEO,对于某些资讯类网站不够友好,而多页面则能够更优的解决此问题. · 传统的多页面开发模式(如java的jsp等) 前后端耦合性大,开发效率低,代 ...

  7. flask学习1

    总结 Flask Web 框架 轻量 websocket 全双工通讯 socket TCP 通讯 MongoDB 数据库 文件型数据库 {} 没有限制 和 约束 Mui + HTML5 Plus 调用 ...

  8. poj_3190

    首先把所有的牛排个序,优先按照起始时间 其次建立一个堆,重载小于号(只可以重载小于号),优先按照右端点的时间排序,大的放下面(sort的时候会放后面),堆顶是结束时间最快的 #include < ...

  9. JavaWeb基本概念及web服务器

    1.基本概念 1.1.前言 web开发: web,网页的意思,www.baidu.com 静态web html,css 提供给所有人看的数据始终不会发生变化! 动态web 淘宝,几乎是所有的网站: 提 ...

  10. C#运算符重载---逐步地分析与理解

    1.什么是运算符重载 定义:(百科定义)就是把已经定义的.有一定功能的操作符进行重新定义,来完成更为细致具体的运算等功能.操作符重载可以将概括性的抽象操作符具体化,便于外部调用而无需知晓内部具体运算过 ...