企业级镜像仓库 harbor

前言

a. 本文主要为 Docker的视频教程 笔记。

b. 环境为 CentOS 7.0 云服务器

c. 上一篇:跨 Docker 宿主机网络 overlay 类型

harbor 所具备的 docker-registry 不具备的优势:界面友好,有用户权限划分,删除镜像方便,可以配置 https

下载和安装

主要步骤:下载安装文件并解压,修改配置文件,执行脚本

具体安装步骤可参考 harbor 官方安装文档

由于使用云服务器无法从 github 上下载,先下载到本地后上传至云服务器。注意,如果 ssh 的端口号不是默认,需要在 scp 命令后紧跟 -P 以指定

修改配置文件,将其中的 hostname 为自己服务器的外网 ip 地址,password 部分按需修改。同时需要需要注释 https 部分,否则会报错(如果启用 https,则自动将 http请求重定向到 https):

Error happened in config validation...

ERROR:root:Error: The protocol is https but attribute ssl_cert is not set

教学视频中的配置文件为 harbor.cfg,而我下载下来的为 harbor.yml,但其中的内容大致相同

在本地电脑(Ubuntu 18.04)中准备了镜像,推送到云服务器上。需要先在本地的 Docker 中配置信任该镜像站点(在 /etc/docker/daemon.json 中),在 insecure-registries 数组中添加服务器地址,否则会报 443端口拒绝连接:

还需要使用 docker login 命令登录,否则会报未授权:

成功上传镜像:

注意:上传镜像需要登录,而下载镜像则不需要

配置 https

下载申请到的证书。由于 harbor 的使用 Nginx 服务器,因此只需要 Nginx 的证书即可。将 hostname 改为 证书相匹配的域名将 https 相关的注释去除设置好证书的路径

配置完成后,删除已经运行的容器,重新执行安装脚本 install.sh,之后可以使用域名访问,并可以发现默认使用了 https:

此时,删除 /etc/docker/daemon.json 中的 insecure-registries 配置,重启 Docker 服务。可以正常拉取镜像而不报错:

root@battor-OMEN:/home/battor# docker pull www.example.site/library/busybox_ana@sha256:96692dc2b25f83d085b6d6344d3c18ccbddc4b325907433a9ca4a805b7855421

sha256:96692dc2b25f83d085b6d6344d3c18ccbddc4b325907433a9ca4a805b7855421: Pulling from library/busybox_ana

Digest: sha256:96692dc2b25f83d085b6d6344d3c18ccbddc4b325907433a9ca4a805b7855421

Status: Downloaded newer image for www.example.site/library/busybox_ana@sha256:96692dc2b25f83d085b6d6344d3c18ccbddc4b325907433a9ca4a805b7855421

www.example.site/library/busybox_ana@sha256:96692dc2b25f83d085b6d6344d3c18ccbddc4b325907433a9ca4a805b7855421

参考

使用SCP命令上传文件

https://www.cnblogs.com/magicc/p/6490566.html

企业级镜像仓库 harbor的更多相关文章

  1. 企业级镜像仓库harbor搭建

    企业级镜像仓库harbor搭建 一.    Harbor概述 VMware公司最近开源了企业级Registry项目Harbor,其的目标是帮助用户迅速搭建一个企业级的Docker registry 服 ...

  2. Docker: 企业级镜像仓库Harbor的使用

    上一节,演示了Harbor的安装部署 这次我们来讲解 Harbor的使用. 我们需要了解到: 1. 如何推镜像到镜像仓库 2. 如何从镜像仓库拉取镜像 3. 如何运行从私有仓库拉取的镜像 # 查看 h ...

  3. docker进阶-搭建私有企业级镜像仓库Harbor

    为什么要搭建私有镜像仓库   对于一个刚刚接触Docker的人来说,官方的Docker hub是用于管理公共镜像.既然官方提供了镜像仓库我们为什么还要去自己搭建私有仓库呢?虽然也可以托管私有镜像.我们 ...

  4. 企业级镜像仓库Harbor

    介绍: Habor是由VMWare公司开源的容器镜像仓库.事实上,Habor是在Docker Registry上进行了相应的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括:管理用户界面, ...

  5. 使用docker搭建“企业级镜像仓库”Harbor

    一.前沿 docker的官方镜像仓库registry,功能比较单一,不太好用,特别是删除镜像操作,不够友好. Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一 ...

  6. 【Docker】企业级镜像仓库harbor的搭建(http/https)及使用

    一:用途 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器. 二:安装docker-ce 环境:阿里云轻量应用服务器CentOS 7.3 这里通过yum Docker源仓 ...

  7. docker企业级镜像仓库Harbor管理

    Harbor概述 Harbor是由VMWare公司开源的容器镜像仓库.事实上,Harbor是在Docker Registry上进行了相应的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括: ...

  8. Docker 企业级镜像仓库 Harbor 的搭建与维护

    目录 一.什么是 Harbor 二.Harbor 安装 2.1.Harbor 安装环境 2.2.Harbor安装 2.3 配置HTTPS 三.Harbor 的使用 3.1.登录Harbor并使用 3. ...

  9. Docker企业级镜像仓库harbor(vmware 中国团队)

    第一步:安装docker和docker-compose 第二步:下载harbor-offline-installer-v1.3.0.tgz 第三步:上传到/opt,并解压 第四步:修改harbor.c ...

随机推荐

  1. 启动Eclipse时,弹出JVM terminated. Exit code=127..错误的解决方案

    在Linux环境下,启动Eclipse,会弹出并报如下的错误,且不能启动该工具 JVM terminated. Exit code=127/eclipse/jdk1.7.0_71/bin/java-D ...

  2. linux 源码搭建Kafka集群,100%有效

    kafka源码编译安装 准备三台服务器 192.168.xxx.xxx 192.168.xxx.xxx 192.168.xxx.xxx 安装kafka前需先安装JDK和zookeeper如下步骤: J ...

  3. 【笔记】KNN之网格搜索与k近邻算法中更多超参数

    网格搜索与k近邻算法中更多超参数 网格搜索与k近邻算法中更多超参数 网络搜索 前笔记中使用的for循环进行的网格搜索的方式,我们可以发现不同的超参数之间是存在一种依赖关系的,像是p这个超参数,只有在 ...

  4. Windows内核开发-6-内核机制 Kernel Mechanisms

    Windows内核开发-6-内核机制 Kernel Mechanisms 一部分Windows的内核机制对于驱动开发很有帮助,还有一部分对于内核理解和调试也很有帮助. Interrupt Reques ...

  5. Element Vue 开箱即用框架如何使用-测试开发【提测平台】阶段小结(二)

    微信搜索[大奇测试开],关注这个坚持分享测试开发干货的家伙. 上一篇总结了后端服务接口的开发,这篇我们主要来总结下前后端分离开发中的前端部分,主要是开箱即用的框架介绍和之前章节组件的梳理和部分的扩展内 ...

  6. 使用Java8改造出来的模板方法真的是yyds

    GitHub 21.3k Star 的Java工程师成神之路,不来了解一下吗! GitHub 21.3k Star 的Java工程师成神之路,真的不来了解一下吗! 我们在日常开发中,经常会遇到类似的场 ...

  7. 对象 绑定关系 隐藏属性 property 继承

    绑定方法两种: 1.绑定给对象的 class Student(): country = 'CHINA' def __init__(self,name,age): self.name = name se ...

  8. L298N使用资料

    L298N驱动连接arduino小车电机(代码和使用): https://www.cnblogs.com/fsong/p/12309911.htmlarduino UNO 连接L298N驱动两个电机转 ...

  9. Ubuntu18.04忘记root密码,重置root密码

    输入命令,更新root密码: sudo passwd root 然后输入新密码,再输入一次确认新密码,新密码更新完毕! 切换root账号: su 如下图所示,发现已经由zyw账号切换到root账号了!

  10. mongodb中时间跟实际时间相差8小时----时区问题

    遇到的问题 参考:mongo中时间跟实际时间相差8小时 Mongo中一个Collection有一个字段用来存放数据的插入时间,但记录的时间比实际时间晚了8小时. 查询得知存储在mongodb中的时间是 ...