私有镜像仓库Harbor基础介绍与部署
企业级私有镜像仓库Harbor
一:介绍
- Harbor,是一个英文单词,意思是港湾,港湾是干什么的呢,就是停放货物的,而货物呢,是装在集装箱中的,说到集装箱,就不得不提到Docker容器,因为docker容器的技术正是借鉴了集装箱的原理。所以,Harbor正是一个用于存储Docker镜像的企业级Registry服务。
- Registry是Docker官方的一个私有仓库镜像,可以将本地的镜像打标签进行标记然后push到以Registry起的容器的私有仓库中。企业可以根据自己的需求,使用Dokcerfile生成自己的镜像,并推到私有仓库中,这样可以大大提高拉取镜像的效率。
二:Harbor核心组件解释
- Proxy:他是一个nginx的前端代理,代理Harbor的registry,UI, token等服务。
- db:负责储存用户权限、审计日志、Dockerimage分组信息等数据。
- UI:提供图形化界面,帮助用户管理registry上的镜像, 并对用户进行授权。
- jobsevice:jobsevice是负责镜像复制工作的,他和registry通信,从一个registry pull镜像然后push到另一个registry,并记录job_log。
- Adminserver:是系统的配置管理中心附带检查存储用量,ui和jobserver启动时候回需要加载adminserver的配置。
- Registry:镜像仓库,负责存储镜像文件。
- Log:为了帮助监控Harbor运行,负责收集其他组件的log,供日后进行分析。
三:Harbor和Registry的比较
Harbor和Registry都是Docker的镜像仓库,但是Harbor作为更多企业的选择,是因为相比较于Regisrty来说,它具有很多的优势。
1.提供分层传输机制,优化网络传输
Docker镜像是是分层的,而如果每次传输都使用全量文件(所以用FTP的方式并不适合),显然不经济。必须提供识别分层传输的机制,以层的UUID为标识,确定传输的对象。
2.提供WEB界面,优化用户体验
只用镜像的名字来进行上传下载显然很不方便,需要有一个用户界面可以支持登陆、搜索功能,包括区分公有、私有镜像。
3.支持水平扩展集群
当有用户对镜像的上传下载操作集中在某服务器,需要对相应的访问压力作分解。
4.良好的安全机制
企业中的开发团队有很多不同的职位,对于不同的职位人员,分配不同的权限,具有更好的安全性。
5.Harbor提供了基于角色的访问控制机制,并通过项目来对镜像进行组织和访问权限的控制。kubernetes中通过namespace来对资源进行隔离,在企业级应用场景中,通过将两者进行结合可以有效将kubernetes使用的镜像资源进行管理和访问控制,增强镜像使用的安全性。尤其是在多租户场景下,可以通过租户、namespace和项目相结合的方式来实现对多租户镜像资源的管理和访问控制。
一、下载离线Harbor安装包
Harbor官方下载:https://github.com/goharbor/harbor
进入首页,下面是Harbor的介绍

进行下载

我们下载部我们下载部署的硬件要求:

选择release,找到历史版本


在线的一般是国外的源有可能会出现问题,建议
一般下载离线安装包:hatbor-offine-installer-v1.81.tgz
下载好上传我们的根目录
[root@harbor-mysql ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg 模板 图片 下载 桌面
harbor-offline-installer-v1.8.1.tgz 公共 视频 文档 音乐
二、安装Docker
这里是Centos7安装方式,ce版本是最新的社区版
安装依赖包
$ sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
添加Docker软件包源
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
安装Docker-ce
$ sudo yum install docker-ce
启动Docker
默认是国外的源,下载会很慢,建议配置国内镜像仓库
建议使用daocloud的加速器
该脚本可以将 --registry-mirror 加入到你的 Docker 配置文件 /etc/docker/daemon.json 中
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io
启动Docker
$ sudo systemctl start docker
三、下载docker-compose
Docker-compose文档地址https://docs.docker.com/compose/install/
[root@harbor-mysql ~]# curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
[root@harbor-mysql ~]# chmod +x /usr/local/bin/docker-compose
[root@harbor-mysql ~]# docker-compose --version
docker-compose version 1.24.1, build 4667896b
四、部署Harbor服务
[root@harbor-mysql ~]# tar xf harbor-offline-installer-v1.8.1.tgz -C /usr/local
[root@harbor-mysql ~]# cd /usr/local/harbor/
[root@harbor-mysql harbor]# ls
harbor.v1.8.1.tar.gz harbor.yml install.sh LICENSE prepare
[root@harbor-mysql harbor]# vim harbor.yml
修改配置文件yml,修改安装的ip地址
Hostname : 192.168.30.24
启动并安装Harbor
配置完成后就可以启动Harbor了

查看Harbor 启动镜像

如果一切正常,应该可以打开浏览器访问:http://192.168.30.24的管理页面,管理用户名是admin 密码为Harbor12345

创建项目名称

私有镜像仓库Harbor基础介绍与部署的更多相关文章
- 容器云平台No.5~企业级私有镜像仓库Harbor V2.02
		镜像仓库 仓库,顾名思义,就是存放东西的地方,Docker仓库,理所当然,就是存放docker镜像的地方了. Docker仓库分公有仓库和私有仓库.共有仓库有hub.docker.com.gcr.io ... 
- 容器技术之Docker私有镜像仓库harbor
		前文我们聊到了docker的私有镜像仓库docker-distribution的搭建和简单的使用,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13058338 ... 
- docker 系列 - 企业级私有镜像仓库Harbor部署(转载)
		本文转载自 搜云库 的文章 https://www.jianshu.com/p/7d76850de03f , 感谢作者 3.png 上一篇文章搭建了一个具有基础功能,权限认证.TLS 的私有仓库, ... 
- docker实战——Docker本地私有镜像仓库Harbor搭建及配置
		Harbor介绍 Docker容器应用的开发和运行离不开可靠的镜像管理,虽然docker官方提供了公共的镜像仓库(Docker Hub),但是从安全和效率等方面考虑,部署我们私有环境内的Registr ... 
- Docker私有镜像仓库Harbor
		一.安装Harbor(离线安装包的方式安装) 1.解压离线包 2.进入harbor目录中编辑harbor.yml 3.安装docker-compose yum -y install docker-co ... 
- 私有容器镜像仓库harbor
		私有镜像仓库Harbor 1.Harbor概述 Habor是由VMWare公司开源的容器镜像仓库.事实上,Habor是在Docker Registry上进行了相应的企业级扩展,从而获得了更加广泛的应用 ... 
- Docker: 企业级镜像仓库Harbor的使用
		上一节,演示了Harbor的安装部署 这次我们来讲解 Harbor的使用. 我们需要了解到: 1. 如何推镜像到镜像仓库 2. 如何从镜像仓库拉取镜像 3. 如何运行从私有仓库拉取的镜像 # 查看 h ... 
- 配置kuernetes集群pod拉取私有镜像仓库中的镜像
		目录 1 背景说明 2 实现方法 3 具体实现 配置镜像仓库项目为公开类型(任何人可以访问) 配置docker-registry类型的secret(pod使用secret获取镜像认证) 通过账户名密码 ... 
- 手动搭建Docker本地私有镜像仓库
		实验环境:两个Centos7虚拟机,一个是Server,用作客户端,另一个是Registry,用作Docker私有镜像仓库. 基础配置 查看一下两台虚拟机的IP地址 Server的IP地址是192.1 ... 
随机推荐
- Springboot mini - Solon详解(七)- Solon Ioc 的注解对比Spring及JSR330
			Springboot min -Solon 详解系列文章: Springboot mini - Solon详解(一)- 快速入门 Springboot mini - Solon详解(二)- Solon ... 
- python 利用cvxopt线性规划
			from cvxopt import matrix, solvers ################################################################# ... 
- Unity 2017 Scene界面与Game界面显示不同/过于灰暗的解决办法
			场景界面的显示过于灰暗,严重影响工作心情. 切换到游戏界面时的颜色. 只要将场景中全部摄像机的[Allow HDR]取消勾选即可. 
- 探究 position-sticky 失效问题
			CSS 的 position 值中,有一个非常有用的值 -- position: sticky,通常会被用于各种吸顶,吸底,吸边的效果中. 如果你对 sticky 还不太熟悉,可以先看看我的这篇文章: ... 
- Centos7安装packstack
			Centos7安装packstack 步骤一 下载centos7.6 https://archive.kernel.org/centos-vault/7.6.1810/isos/x86_64/Cent ... 
- Java 8 新特性 - Lambda表达式
			Lambda表达式 vs 匿名类既然lambda表达式即将正式取代Java代码中的匿名内部类,那么有必要对二者做一个比较分析.一个关键的不同点就是关键字 this.匿名类的 this 关键字指向匿名类 ... 
- Gitlab Runner的分布式缓存实战
			欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ... 
- Shiro认证详解
			Shiro shiro是一个java的安全框架 官网地址 http://shiro.apache.org/ 目录 Shiro Shiro综述 过滤器 注解 整合Shiro 1. 配置SecurityM ... 
- 开源编解码项目FFmpeg迎来20周年生日 凭一己之力养活全球无数播放器!
			近日,开源编解码库项目FFmpeg迎来20周年生日. 2000.12.20-2020.12.20 可能很多人对于FFmpeg不是特别了解,那么以下几个名字是否大家或多或少都用过呢? 暴风影音.PotP ... 
- Spring Boot 有哪些优点?
			a.减少开发,测试时间和努力. b.使用 JavaConfig 有助于避免使用 XML. c.避免大量的 Maven 导入和各种版本冲突. d.通过提供默认值快速开始开发.没有单独的 Web 服务器需 ... 
