Harbor私有镜像仓库(上)
上图配置为工作环境
特别注意: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私有镜像仓库(上)的更多相关文章
- harbor私有镜像仓库的搭建与使用与主从复制
harbor私有镜像仓库,私有仓库有两种,一种是harbor,一种是小型的私有仓库,harbor有两种模式,一种是主 从,一种是高可用仓库,项目需求,需要两台服务器,都有docker.ldap权限统一 ...
- 搭建Harbor私有镜像仓库--v1.5.1
搭建Harbor私有镜像仓库--v1.5.1 1.介绍 Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境 ...
- k8s创建harbor私有镜像仓库
1. 部署准备 准备harbor软件包 在部署节点上: mv harbor-offline-installer-v1.4.0.tgz /opt/ && cd /opt tar zxvf ...
- 部署Harbor私有镜像仓库
Harbor私有镜像仓库无坑搭建 目录 1. harbor介绍 2. docker-ce的安装 3. docker-compose的安装 4. Harbor私有仓库的安装 5. 客户端连接镜像仓库配置 ...
- harbor 私有镜像仓库使用
使用harbor私有镜像仓库 登录镜像仓库reg.lvusyy.com docker login reg.lvusyy.com [centos@k8smaster ~]$ sudo docker lo ...
- Harbor私有镜像仓库(下)
Harbor私有镜像仓库(下) 链接:https://pan.baidu.com/s/1MAb0dllUwmoOk7TeVCZOVQ 提取码:ldt5 复制这段内容后打开百度网盘手机App,操作更方便 ...
- Harbor私有镜像仓库无坑搭建
转载:https://k8s.abcdocker.com/kubernetes_harbor.html 一.介绍 Docker容器应用的开发和运行路不开可靠的镜像管理,虽然Docker官方也提供了公共 ...
- 03: 使用docker搭建Harbor私有镜像仓库
1.1 harbor介绍 1.Harbor简介 1. Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器. 2. 镜像的存储harbor使用的是官方的docker regi ...
- 安装harbor私有镜像仓库
有朋友安装harbor的过程中遇到很多问题,为此写一篇最简单安装harbor的文档,希望能帮助所有刚开始接触harbor的新手.harbor的架构不做探究. 实验验环境:os --> cento ...
随机推荐
- java http 请求的工具类
/*** Eclipse Class Decompiler plugin, copyright (c) 2016 Chen Chao (cnfree2000@hotmail.com) ***/pack ...
- 【C++】关键字inline
1. 引入inline关键字的原因 在c/c++中,为了解决一些频繁调用的小函数大量消耗栈空间(栈内存)的问题,特别的引入了inline修饰符,表示为内联函数. 栈空间就是指放置程序的局部数据(也就是 ...
- 关于eth0 eth0:1 和eth0.1关系介绍
eth0 eth0:1 和eth0.1三者的关系对应于物理网卡.子网卡.虚拟VLAN网卡的关系:物理网卡:物理网卡这里指的是服务器上实际的网络接口设备,这里我服务器上双网卡,在系统中看到的2个物理网卡 ...
- C# 操作redis
下载 redis windows 版本 官网目前没有windows安装下载,下载地址为 https://github.com/MicrosoftArchive/redis/releases 直接点击安 ...
- python之路——17
王二学习python的笔记以及记录,如有雷同,那也没事,欢迎交流,wx:wyb199594 复习 1.迭代器2.生成器3.内置函数 1.学习55个 2.带key的,max min filter map ...
- android全屏/沉浸式状态栏下,各种键盘挡住输入框解决办法
https://blog.csdn.net/smileiam/article/details/69055963
- 爬虫系列3:Requests+Xpath 爬取租房网站信息并保存本地
数据保存本地 [抓取]:参考前文 爬虫系列1:https://www.cnblogs.com/yizhiamumu/p/9451093.html [分页]:参考前文 爬虫系列2:https://www ...
- Java Lambda expression
Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性. Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中). 使用 Lambda 表达式可以使代码变的更加 ...
- Python学习【02】Python基础
一.Python内部执行过程 1.Python的后缀名可以是任意? print("hello,world") 保存成 .py / .txt / .sb / .aaa 都可以用在 ...
- 【Nginx】实现负载均衡
负载均衡是什么? 当一台服务器的单位时间内的访问量越大时,服务器压力就越大,大到超过自身承受能力时,服务器就会崩溃.为了避免服务器崩溃,让用户有更好的体验,我们通过负载均衡的方式来分担服务器压力. 我 ...