博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
docker-harbor私有仓库
阅读量:4195 次
发布时间:2019-05-26

本文共 2427 字,大约阅读时间需要 8 分钟。

harbor私有仓库

一、简介

docker harbor有可视化的web管理界面,可以方便管理docker镜像,又提供了多个项目的镜像权限管理及控制功能

harbor是VMware公司开源的企业级docker registry项目

二、harbor的优势

1、基于角色控制

2、基于镜像的复制策略
3、支持LDAP/AD
4、图像删除和垃圾收集
5、图形UI
6、审计
7、RESTful API

三、harbor架构介绍

1、proxy

通过一个前置的反向代理统一接收浏览器、docker客户端的请求,并将请求转发给后端的不同服务

2、Registry

负载存储docker镜像,并处理docker push/pull命令

3、Core services

harbor的核心功能,包括UI、webhook、token服务

4、Database

为core services提供数据库服务

5、Log collector

负载收集其他组件的log,供日后进行分析

docker私有仓库架构拓扑图
在这里插入图片描述

四、搭建harbor私有仓库

1、环境配置

主机 操作系统 IP地址 软件
server centos7.6 192.168.177.33 docker、docker-compose、harbor-offline-v.1.1.2
client centos7.6 192.168.177.8 docker

2、要求

通过Harbor创建Docker私有仓库

图形化管理Docker私有仓库镜像

3、部署harbor服务

server(192.168.177.33)

安装compose

cd /usr/localrz docker-composechmod +x docker-composemv docker-compose /usr/bin

在这里插入图片描述

安装harbor-offline

rz harbor-offline-installer-v1.2.2.tgztar zxvf harbor-offline-installer-v1.2.2.tgz -C /usr/local/==配置Harbor参数文件==vim /usr/local/harbor/harbor.cfg==第5行修改==hostname = 192.168.184.11

在这里插入图片描述

sh /usr/local/harbor/install.sh  #安装harbor

在这里插入图片描述

docker psdocker images

在这里插入图片描述

在这里插入图片描述

docker-compose ps

在这里插入图片描述

真机访问serverIP

192.168.177.33用户名:admin密码:Harbor12345

在这里插入图片描述

添加项目并填写名称
在这里插入图片描述
在这里插入图片描述

通过127.0.0.1来登陆和推送镜像

#登陆docker login -u admin -p Harbor12345 http://127.0.0.1#下载镜像进行测试docker pull tomcat#镜像打标签docker tag tomcat 127.0.0.1/myproject-edg/tomcat:v1#上传镜像到Harbordocker push 127.0.0.1/myproject-edg/tomcat:v1

在这里插入图片描述

在这里插入图片描述
查看图形化界面
在这里插入图片描述
在这里插入图片描述

以上操作都是在 Harbor 服务器本地操作。如果其他客户端上传镜像到 Harbor,就会报如下错误。出现这问题的原因 Docker Registry 交互默认使用的是 HTTPS,但是搭建私有镜像默认使用的是 HTTP 服务,所以与私有镜像交互时出现以下错误。

在这里插入图片描述

解决方法

vim /usr/lib/systemd/system/docker.service添加  --insecure-registry serverIP

在这里插入图片描述

systemctl daemon-reloadsystemctl restart docker

在这里插入图片描述

docker pull nginxdocker tag nginx:latest 192.168.177.33/myproject-edg/nginx:v1docker push 192.168.177.33/myproject-edg/nginx:v1

在这里插入图片描述

在这里插入图片描述
图形界面查看
在这里插入图片描述

维护管理harbor

修改 Harbor.cfg 配置文件要更改 Harbour 的配置文件时,请先停止现有的 Harbour 实例并更新 Harbor.cfg;然后运行 prepare 脚本来填充配置;最后重新创建并启动 Harbour 的实例。
#卸载docker-compose down -v#编辑配置文件 vim harbor.cfg#填充配置./prepare#启动Harbordocker-compose up -d#如果报错解决思路关闭防火墙、重启dockersystemctl stop firewalldsetenfore 0systemctl restart docker

创建harbor用户

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
client操作

docker logout 192.168.177.33docker login 192.168.177.33tefuirHarbor12345docker imagesdocker rmi 192.168.177.33/myproject-edg/nginx:v1docker pull 192.168.177.33/myproject-edg/nginx:v1

在这里插入图片描述

在这里插入图片描述
图形化界面访问
在这里插入图片描述

移除 Harbor 服务容器同时保留镜像数据/数据库

在server上操作

docker-compose down -v#如果需要重新部署,需要移除Harbor服务容器全部数据#持久数据,如镜像,数据库等在宿主机的/data目录下,日志在宿主机的/var/log/Harbor目录下rm -rf /data/databaserm -rf /data/registry

转载地址:http://acwli.baihongyu.com/

你可能感兴趣的文章
CSDN-markdown编辑器使用方法
查看>>
css实现input获得焦点时label向上移动并且输入框下边框样式改变
查看>>
JavaScript基础教程之函数的重新学习
查看>>
isNaN()内置函数的用法
查看>>
JavaScript基础教程之flag的用法
查看>>
JavaScript基础教程之JS函数中对this的疑惑与不解
查看>>
JavaScript基础教程之querySelectorAll( )方法遇到的问题
查看>>
《JavaScript高级程序设计》学习笔记(一)JavaScript简介
查看>>
JavaScript基础教程之字符串对象
查看>>
JavaScript基础教程之数学对象
查看>>
JavaScript基础教程之数组对象
查看>>
《JavaScript高级程序设计》学习笔记(三)基本概念
查看>>
关于bootstrap-table冻结列生成多个冻结表头和表格主体的问题
查看>>
《CSS世界》学习笔记(一)
查看>>
swiper组件如何自定义分页符和前进后退按钮
查看>>
jQuery中attr()与prop()的区别
查看>>
spring JPA动态查询
查看>>
Node.js 学习笔记(一)
查看>>
U3D框架搭建(一):订阅者模式
查看>>
U3D使用:带有骨骼信息的节点无法旋转、位移
查看>>