上图配置为工作环境

特别注意:win10现在不允许使用私有ca证书,到时登录浏览器会失败,可以选用火狐浏览器。

创建自己的CA证书

openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -days 365 -out ca.crt

上面从上到下分别表示:中国、北京、北京、公司名云计算、证书绑定的域名

生成证书签名请求

openssl req -newkey rsa:4096 -nodes -sha256 -keyout www.yunjisuan.com.key -out www.yunjisuan.com.csr

上面可以设置密码,这里演示就不设置了

生成注册表主机的证书

openssl x509 -req -days 365 -in www.yunjisuan.com.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out www.yunjisuan.com.crt

三、信任自签发的域名证书

将自签ca证书添加到系统信任

让系统信任设置立即生效

四、Harbor 1.4 版本配置与安装

注意:要关闭防火墙和selinux

4.1 安装docker-ce社区版

先关闭selinux     安装依赖包

然后运行curl https://download.docker.com/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker-ce.repo获取docker-ce.repo包

启动docker,并加入开机自启动

4.2 下载并安装harbor私有仓库

创建harbor的证书目录,并复制

先mkdir -p /etc/ssl/harbor

创建harbor下载目录并下载harbor-offline-installer-v1.5.0.tgz

下载包:wget http://harbor.orientsoft.cn/harbor-v1.5.0/harbor-offline-installer-v1.5.0.tgz

把原配置文件修改如下图:第7行必须写域名,跟之前创建的证书一致、第11行改成https、第23行和24行指向证书位置

到第68行查看默认密码,

安装命令docker-compose(需要1.21版本)

安装harbor私有镜像仓库(参数--with-clair是启用漏洞扫描)

登录浏览器(火狐浏览器),输入本机ip地址访问

点击高级

再点击添加例外

点击确认安全例外

用户名为admin 密码为之前在配置文件里看到的Harbor12345

接下来进行安全设置

在配置管理里-项目创建  改为仅管理员,认证模式不用改(企业中改为LDAP认证)

在项目->library->配置管理里把自动扫描镜像勾选,企业中把阻止潜在漏洞镜像也勾选

在linux上登录

可以看到上面输入IP地址,结果报错,这里必须用域名

用域名时先需要映射一下

非交互式登录:

上传镜像(以centos为例):

格式必须为docker push 域名/库名/镜像名

上传成功:

其他电脑要登录harbor时,需要认证证书,同时需要让那台电脑信任认证证书,前面已经讲过了,记住,信任完后需要重启docker

映射也别忘了做

从harbor上下载时也是和上传时格式一样

harbor镜像的复制与同步

harbor私有仓库的主从复制,类似于MySQL,属于一对多的复制

部署harbor-slave:再安装一个harbor私有仓库作为harbor的从库,域名为www2.yunjisuan.com

创建证书,并让linux信任证书,然后重启docker服务

这时,要把www2.yunjisuan.com.crt 发送给主harbor,并让主harbor信任该证书

然后在主barbor上执行操作

注意:这时登录网站还可以进入主harbor,如果不能进入,就执行上面的install那,从那开始重新执行一遍

然后再在从harbor上也进行install那部分的操作

cat harbor.cfg文件,把www.yunjisuan.com都改为www2.yunjisuan.com

把www2.yunjisuan.com.key和www2.yunjisuan.com.crt复制到/etc/ssl/harbor/下

接下来和上面讲的一样

账号密码还是和之前一样

可以看到从harbor里面是空的,接下来在主harbor上操作

仓库管理-->新建目标

注意,上面的验证远程证书不要勾,然后测试连接

可以发现,连接是失败的,

日志文件在/var/log/harbor/下,有很多日志,我们可以看ui.log分析错误

因为URL那输入的必须是域名,即:www2.yunjisuan.com,可是harbor的主从复制是直接查询DNS的,而不是映射,所以我们还需要配置一下DNS服务才能解析出域名

进入linux虚拟机进行登录看看

linux上是成功的,linux上是先查询映射

再开一台虚拟机,配置一下DNS解析服务:

创建正向解析

上图中的yunjisuan.com.zone是复制named.empty得来的,cp -p named.empty yunjisuan.com.zone

注意:一定要带-p ,这是复制时把属主和属组都复制,不带-p到时会出现权限错误

编辑配置文件:

验证并开启DNS服务:

验证DNS的功能:

在主harbor上把网关改为之前配置DNS服务的虚拟机的ip:

这时,还是连接失败,这是因为缓存的关系,需要重启docker服务

可以看到,终于连接成功了,然后点击确定

点击复制管理-->新建规则  定义把哪些镜像同步过去

再点击保存

再去从harbor看看

从库已经传输完毕,主从复制搭建成功

Harbor私有镜像仓库(上)的更多相关文章

  1. harbor私有镜像仓库的搭建与使用与主从复制

    harbor私有镜像仓库,私有仓库有两种,一种是harbor,一种是小型的私有仓库,harbor有两种模式,一种是主 从,一种是高可用仓库,项目需求,需要两台服务器,都有docker.ldap权限统一 ...

  2. 搭建Harbor私有镜像仓库--v1.5.1

     搭建Harbor私有镜像仓库--v1.5.1 1.介绍 Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境 ...

  3. k8s创建harbor私有镜像仓库

    1. 部署准备 准备harbor软件包 在部署节点上: mv harbor-offline-installer-v1.4.0.tgz /opt/ && cd /opt tar zxvf ...

  4. 部署Harbor私有镜像仓库

    Harbor私有镜像仓库无坑搭建 目录 1. harbor介绍 2. docker-ce的安装 3. docker-compose的安装 4. Harbor私有仓库的安装 5. 客户端连接镜像仓库配置 ...

  5. harbor 私有镜像仓库使用

    使用harbor私有镜像仓库 登录镜像仓库reg.lvusyy.com docker login reg.lvusyy.com [centos@k8smaster ~]$ sudo docker lo ...

  6. Harbor私有镜像仓库(下)

    Harbor私有镜像仓库(下) 链接:https://pan.baidu.com/s/1MAb0dllUwmoOk7TeVCZOVQ 提取码:ldt5 复制这段内容后打开百度网盘手机App,操作更方便 ...

  7. Harbor私有镜像仓库无坑搭建

    转载:https://k8s.abcdocker.com/kubernetes_harbor.html 一.介绍 Docker容器应用的开发和运行路不开可靠的镜像管理,虽然Docker官方也提供了公共 ...

  8. 03: 使用docker搭建Harbor私有镜像仓库

    1.1 harbor介绍 1.Harbor简介 1. Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器. 2. 镜像的存储harbor使用的是官方的docker regi ...

  9. 安装harbor私有镜像仓库

    有朋友安装harbor的过程中遇到很多问题,为此写一篇最简单安装harbor的文档,希望能帮助所有刚开始接触harbor的新手.harbor的架构不做探究. 实验验环境:os --> cento ...

随机推荐

  1. python3-基础2

    数据类型:数字 .字符.列表.字典.集合 字符串: 要用引号引起来  单引号 双引号  三引号 字符串只能存一个值,没有单独字符一说 取字符串值  print(name[0])    中括号表示 常用 ...

  2. eclipse项目上传服务器注意事项

    1.先准备服务器环境 2 数据库导入,tomcat安装 3 开放服务器端口,配置网络 4.修改本地代码修改为发布版本,即ip,账号密码数据库等 5 变动的信息应该写在配置文件或者一个全局产量中,这样才 ...

  3. PHP安装Eclipse与使用

    PHP有非常多相当不错的开发工具,如Zend Studio.NetBeans.phpdesigner等,但对于习惯Java编程的程序员们来说,最经常使用的还要属Eclipse. 那么Eclipse能用 ...

  4. 学习笔记《Java多线程编程实战指南》三

    3.1串行.并发与并行 1.串行:一件事做完接着做下一件事. 2.并发:几件事情交替进行,统筹资源. 3.并行:几件事情同时进行,齐头并进,各自运行直到结束. 多线程编程的实质就是将任务处理方式由串行 ...

  5. html的换行代码<br/>介绍和写法

    在网页中,我们要对文字进行换行,就需要使用到<br/>标签,写法如下 换行:<br/> <br/>属于一个单独标签,仅需要将需要换行的文字后方加入此标签即可实现换行 ...

  6. List<Map<String, Object>>集合中获取某个key并转换为List<Integer>集合

    package com.codyy.sso.controller.yuanqu; import java.util.ArrayList; import java.util.HashMap; impor ...

  7. Spring boot 的 properties 属性值配置 application.properties 与 自定义properties

    配置属性值application.properties 文件直接配置: com.ieen.super.name="MDD" 自定义properties文件配置:src/main/r ...

  8. numpy学习笔记(四)

    (1)NumPy - 矩阵库 NumPy 包包含一个 Matrix库numpy.matlib.此模块的函数返回矩阵而不是返回ndarray对象. matlib.empty()返回一个新矩阵,而不初始化 ...

  9. 初识SEO

    一.什么是SEO 1.SEO 搜索引擎优化(Search Engine Optimization)指通过对网站进行站内优化和修复(网站Web结构调整.网站内容建设.网站代码优化和编码等)和站外优化,从 ...

  10. Python 内置函数math,random

    内置函数的一些操作 - math(数学模块) - random(随机模块) - 使用内置函数时注意需要导入 math - (ceil)向上取整,返回取整数 # 向上取整,返回向上取整的数 import ...