1 说明

  1. 前文Centos7搭建Harbor私有仓库(一)中成功搭建了Harbor,但,是以http方式搭建的,这里我们修改为https方式
  2. 以下基于镜像CentOS-7-x86_64-Minimal-1804进行搭建
  3. 均已root用户进行操作

2 生成自签名证书

这里我们使用https://github.com/Fishdrowned/ssl提供的shell脚本生成ssl证书,在命令行中输入以下命名:

git clone https://github.com/Fishdrowned/ssl.git #将项目下载到本地

项目的目录结构如下:

.
├── LICENSE
├── README.md
├── ca.cnf
├── docs
│ ├── chrome-certs-details.png
│ ├── chrome-certs-ok.png
│ ├── chrome-settings-certs-imported.png
│ ├── chrome-settings-certs.png
│ ├── chrome-trust.md
│ └── output.png
├── flush.sh
├── gen.cert.sh
└── gen.root.sh

如果需要修改CA、证书相关信息,可以编辑ca.cnfgen.cert.sh替换对应的内容。接下来,输入以下命令生成ssl证书,

./gen.cert.sh registry.anxminise.cc #生成registry.anxminise.cc域名的证书

目录中,会生成一个out目录,里面的registry.anxminise.cc目录存放了生成的证书,内容如下:

.
├── 20181011-0710
│   ├── registry.anxminise.cc.bundle.crt
│   ├── registry.anxminise.cc.crt
│   └── registry.anxminise.cc.csr.pem
├── registry.anxminise.cc.bundle.crt -> ./20181011-0710/registry.anxminise.cc.bundle.crt
├── registry.anxminise.cc.crt -> ./20181011-0710/registry.anxminise.cc.crt
├── registry.anxminise.cc.key.pem -> ../cert.key.pem
└── root.crt -> ../root.crt

其中,registry.anxminise.cc.crt是我们需要的证书,registry.anxminise.cc.key.pem是秘钥存储文件,将这两个文件上传到Harbor服务器,这里是192.168.1.112服务器。

3 Harbor服务器配置

3.1 配置Harbor的https证书

Harbor服务器上执行以下命令

mkdir -p /data/cert创建证书存放目录
mv registry.anxminise.cc.crt /data/cert/server.crt #将证书放到Harbor配置目录下
mv registry.anxminise.cc.key.pem /data/cert/server.key #将秘钥放到Harbor配置目录下
ll /data/cert #查看目录内容

3.2 配置Harbor以https启动

cd /opt/harbor #进入到harbor目录
vim harbor.cfg #编辑harbor的配置文件

编辑以下内容:

hostname = registry.anxminise.cc #配置harbor服务器的域名
ui_url_protocol = https #配置https方式启动

3.3 重新配置启动Harbor

./prepare #重新配置Harbor
./install.sh #重新执行Harbor安装,注:此处可能有更好的方式重启



4 https访问Harbor

4.1 编辑hosts文件

编辑本地的/etc/hosts文件,加入registry.anxminise.cc域名,如下:

vim /etc/hosts #编辑hosts文件

文件最后添加如下内容:

192.168.1.112 registry.anxminise.cc

保存并退出

4.2 添加并信任根证书

4.2.1 Mac系统

打开钥匙串访问应用,添加生成的根证书,如下:

并设置证书为始终信任,如下:

4.2.2 Windows系统

待补充

4.3 浏览器访问

浏览器中输入https://registry.anxminise.cc,如下:

Centos7搭建Harbor私有仓库(二)的更多相关文章

  1. Centos7搭建Harbor私有仓库(一)

    1 说明 前文Centos7搭建DockerRegistry介绍了DockerRegistry的搭建,但它没有UI页面,因此选择Harbor 以下基于镜像CentOS-7-x86_64-Minimal ...

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

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

  3. 搭建harbor私有仓库

    2-1.项目说明  Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,由VMware开源,其通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源 Docke ...

  4. CentOS7搭建Docker私有仓库----Docker

    有时候使用Docker Hub这样的公共仓库可能不方便,这种情况下用户可以使用registry创建一个本地仓库供私人使用,这点跟Maven的管理类似.目前Docker Registry已经升级到了v2 ...

  5. Docker-compose 搭建 Harbor私有仓库

    一. 安装docker-compose 1. 下载docker-compose的最新版本 curl -L "https://github.com/docker/compose/release ...

  6. centos7搭建docker私有仓库

    1.环境: [root@docker02 anchors]# cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) [root@do ...

  7. Docker以http访问Harbor私有仓库(一)

    1 说明 前文Centos7搭建Harbor私有仓库(一)我们成功搭建Harbor,本篇我们主要配置Docker以http方式访问私有仓库 2 Docker配置 2.1 Mac系统 2.1.1 配置D ...

  8. Kubernetes-5:搭建企业级私有仓库Harbor

    搭建企业级私有仓库Harbor 安装需求 python版本 >= 2.7 Docker引擎版本 >= 1.10 docker-compose版本 >= 1.6.0 安装环境 一.Py ...

  9. 搭建docker镜像仓库(二):使用harbor搭建本地镜像仓库

    目录 一.系统环境 二.前言 三.Harbor 四.使用harbor搭建私有镜像仓库 4.1 环境介绍 4.2 k8smaster节点安装配置harbor 4.2.1 安装harbor离线包 4.2. ...

随机推荐

  1. Hive的两种操作模式

    Hive的客户端操作 Hive的客户端操作 通过JDBC操作Hive 通过Thrift操作Hive 通过JDBC操作Hive 首先 Hive 启动远程服务 hive --service hiveser ...

  2. revit 碰撞检测相关

    Revit二次开发:由房间获取房间的墙     之前用的方法是由房间边界构成的Solid,计算与该Solid相交的Element,然后判断是否为墙.相对来说这个方法比较通用,可以检索出房间的楼板.窗户 ...

  3. 【mybatis】子查询

    networkResource的 resultMap <resultMap id="NetworkResultMap" type="com.chinamobile. ...

  4. [Golang] ETCD键值监听器

    0x0 需求 我们所有的服务启动后都以lease形式注册入ETCD,现要把这些服务监控起来. 0x1 ETCD key监听器实现 可动态增删要监听的键值对 https://github.com/bai ...

  5. Mac AXURE9 汉化

    1.下载汉化文件 https://pan.baidu.com/s/1qE0ZSvf210WLMfvi8RlMpg 2.把lang文件放在Resources文件夹下 3.重新打开Axure就ok了

  6. 读Secrets of the JavaScript Ninja(一)函数

    理解JavaScript为什么应该作为函数式 在JavaScript中,函数是程序执行过程中的主要模块单元 函数是第一类对象 通过字面量创建 function ninjaFunction(){} 赋值 ...

  7. (CSDN迁移) JAVA多线程实现-可控最大并发数线程池(newFixedThreadPool)

    上篇文章中介绍了单线程化线程池newSingleThreadExecutor,可控最大并发数线程池(newFixedThreadPool)与其最大的区别是可以通知执行多个线程,可以简单的将newSin ...

  8. 小甲鱼汇编语言学习笔记——day03

    手动编译并执行第一个汇编程序过程: 1.用notepad++写一个简单的汇编程序(文件命名为:1.asm): assume cs:abc abc segment mov ax, 2 add ax, a ...

  9. initramfs文件系统制作

    源码下载:https://busybox.net/downloads/ 源码版本:busybox-1.30.0.tar.bz2 [ 源码编译步骤 ] make menuconfig ARCH= COM ...

  10. vba实现工具的序列号验证框架

    对于密码破译方面笔者不太懂,之前对于各种序列号的激活也有些臆测,自己根据想法做了个序列号验证的小框架,以后做的工具也可以用之保护一下下... 主要思路是:用户打开小工具后,系统检测是否已激活,如果未激 ...