Harbor私有镜像仓库(上)

上图配置为工做环境node

 

特别注意:win10如今不容许使用私有ca证书,到时登陆浏览器会失败,能够选用火狐浏览器。linux

建立本身的CA证书docker

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

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

 

生成证书签名请求缓存

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

上面能够设置密码,这里演示就不设置了curl

 

生成注册表主机的证书测试

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

 

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

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

让系统信任设置当即生效

4、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看看

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

相关文章
相关标签/搜索