linux运维、架构之路-企业级镜像仓库Harbor

一、Harbor介绍

 Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。

     Harbor主要组件包括proxy,它是一个nginx前端代理,主要是分发前端页面ui访问和镜像上传和下载流量,Ui提供了一个Web管理界面,当然还包括了一个前端页面和后端API,底层使用mysql数据库;Registry是镜像仓库,负责存储镜像文件,当镜像上传完毕后通过ui创建Registry。 当然registry的token认证也是通过ui组件完成;adminserver是系统的配置管理中心附带检查存储用量,ui和Jobserver启动时候会需要加载adminserver的配置;jobservice是负载镜像复制工作的,他和registry通信,从一个registry pull镜像然后push到另一个registry并记录job_log,log是日志汇总组件,通过docker的log-driver把日志汇总到一起。

        Harbor 的每个组件都是以 Docker 容器的形式构建的,我们使用 Docker Compose 来对它进行部署。

  • proxy:由 Nginx 服务器构成的反向代理。
  • registry:由 Docker 官方的开源 registry 镜像构成的容器实例。
  • ui:即架构中的 core services, 构成此容器的代码是 Harbor 项目的主体。
  • mysql:由官方 MySql 镜像构成的数据库容器。
  • log: 运行着 rsyslogd 的容器,通过 log-driver 的形式收集其他容器的日志。

二、Harbor原理图

三、Harbor部署

1、服务器规划


系统


IP地址


主机名


CPU


内存


CentOS  7.5


192.168.56.100


docker


2C


2G


CentOS  7.5


192.168.56.101


harbor


2C


2G

2、docker主机部署docker服务

①下载软件

wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm

②安装软件

yum install docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm -y
yum install docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm -y

③启动Docker服务

systemctl enable docker
systemctl start docker

3、Harbor部署

①安装Docker-compose

curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

常用命令:

docker-compose up -d             #后台启动,如果容器不存在根据镜像自动创建
docker-compose down   -v         #停止容器并删除容器
docker-compose start             #启动容器,容器不存在就无法启动,不会自动创建镜像
docker-compose stop              #停止容器

②安装Harbor

wget https://storage.googleapis.com/harbor-releases/harbor-offline-installer-v1.5.0.tgz
tar xf harbor-online-installer-v1.5.0.tgz -C /app

③修改配置

[[email protected] ~]# cd /app/harbor/
[[email protected]or harbor]# ll
总用量 854960
drwxr-xr-x 4 root root        37 1月   4 17:06 common
-rw-r--r-- 1 root root      1185 5月   2 2018 docker-compose.clair.yml
-rw-r--r-- 1 root root      1725 5月   2 2018 docker-compose.notary.yml
-rw-r--r-- 1 root root      3596 5月   2 2018 docker-compose.yml
drwxr-xr-x 3 root root       156 5月   2 2018 ha
-rw-r--r-- 1 root root      6685 1月   4 17:02 harbor.cfg
-rw-r--r-- 1 root root 875401338 5月   2 2018 harbor.v1.5.0.tar.gz
-rwxr-xr-x 1 root root      5773 5月   2 2018 install.sh
-rw-r--r-- 1 root root     10771 5月   2 2018 LICENSE
-rw-r--r-- 1 root root       482 5月   2 2018 NOTICE
-rwxr-xr-x 1 root root     27379 5月   2 2018 prepare

修改harbor.cfg文件:

hostname = 192.168.56.101

安装

/app/harbor/install.sh

④Web页面访问

地址:  http://192.168.56.101

默认端口为80,需要修改端口请修改docker-compose.yaml对应服务的映射

 默认用户:admin 密码:Harbor12345

⑤新建项目

4、修改docker的配置文件

vim /usr/lib/systemd/system/docker.service

ExecStart=/usr/bin/dockerd --insecure-registry 192.168.56.101

 重启Docker服务

systemctl daemon-reload
systemctl restart docker

5、测试Docker推送镜像到Harbor仓库

①登录

[[email protected] tools]# docker login -u admin -p Harbor12345 192.168.56.101
Login Succeeded

②Pull镜像

[[email protected] ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
[[email protected] ~]# docker pull daocloud.io/library/nginx:latest
latest: Pulling from library/nginx
0a4690c5d889: Pull complete
9719afee3eb7: Pull complete
44446b456159: Pull complete
Digest: sha256:f83b2ffd963ac911f9e638184c8d580cc1f3139d5c8c33c87c3fb90aebdebf76
Status: Downloaded newer image for daocloud.io/library/nginx:latest

③给镜像打Tag

[[email protected] ~]# docker tag daocloud.io/library/nginx:latest 192.168.56.101/demon/nginx:v1

④推送镜像到Harbor仓库

[[email protected] ~]# docker push 192.168.56.101/demon/nginx:v1
The push refers to a repository [192.168.56.101/demon/nginx]
589561a3ffb4: Pushed
ef7dbb0cfc81: Pushed
d56055da3352: Pushed
v1: digest: sha256:0069dbf31a3ca8921b9ca112dead0ca95072af04c571c99974a65883bf8ca135 size: 948

⑤登录Harbor仓库验证

原文地址:https://www.cnblogs.com/yanxinjiang/p/12150411.html

时间: 2024-10-31 11:22:40

linux运维、架构之路-企业级镜像仓库Harbor的相关文章

企业级镜像仓库harbor搭建

企业级镜像仓库harbor搭建 一.    Harbor概述 VMware公司最近开源了企业级Registry项目Harbor,其的目标是帮助用户迅速搭建一个企业级的Docker registry 服务.它以Docker公司开源的registry 为基础,提供了管理UI, 基于角色的访问控制(Role Based Access Control),AD/LDAP集成.以及审计日志(Audit logging) 等企业用户需求的功能,同时还原生支持中文,对广大中国用户是一个好消息. 官方文档:htt

《Linux运维架构师课程 - 门徒班》【招生中】

课程简介 阿良的课程内容主要以企业核心技术为讲解对象,避免过多在企业中很少用的技术,从而减少学习负担,这样就可以把精力主要花费在更重要的技术上, 而不像其他培训机构那样,讲很多高大上的技术名词,其中可能50%的知识在工作中都用不到,学员抓不住重点,时间长了就忘了.    所以,阿良的教学模式讲究是精益求精,"好钢用到刀刃上,只求精,不求多".    只要你肯学,阿良就肯教.帮助你掌握这门技能,成功就业,初学者月薪达到6000以上. 授课对象 ■ 计算机相关专业在校学生/应届生 ■ 网络

Linux运维架构师课程介绍

课程体系:     RHCE(RedHat Certification Engineer): RH033(基础) RH133(系统管理) RH253(服务管理)     RHCA(Redhat Centification Architect): RH401 RH423(LDAP协议) RH442         RH436(集群和存储) RHS333     MySQL     NoSQL 工作岗位: 系统架构师:设计蓝图 系统工程师:系统上线 运维工程师:系统运维 DBA:数据库管理员 计算机

Linux运维架构师学习开篇——笔记

从毕业从事硬件失效分析方面工作近三年, 偏冷门的行业,一直在工厂产线,吸着产品线散发出的一道道气息,闲暇之余我也在思考难道我今后只能在工厂待一辈子吗?我的职业只能在生产线处理不良产品,我的未来就是作为一个硬件高级维修工吗?我想走出产品线,对未来的职业发展充满迷茫,内心思想一直在挣扎.马上奔三后该做什么,能做什么? 以前接触过Linux,但仅仅是复制粘贴指令,配置IP,最基本操作而已,没有接触到真正的技术,为了今后能有一技之长,有个明确的发展方向(云端),也为了能拿到一份不错的薪水,提高生活质量,

docker进阶-搭建私有企业级镜像仓库Harbor

为什么要搭建私有镜像仓库 ??对于一个刚刚接触Docker的人来说,官方的Docker hub是用于管理公共镜像.既然官方提供了镜像仓库我们为什么还要去自己搭建私有仓库呢?虽然也可以托管私有镜像.我们可以非常方便的把我们自己镜像推送上去,但是Docker hub提供的私有仓库个数有限.对于个人来说Docker hub是个不错的选择,但是对于企业来说,相对于安全 ,成本和公司的架构来说搭建自己的私有镜像仓库才是正确的道路. 什么是Harbor?为什么要选择Harbor ??Harbor是一个用于存

企业级镜像仓库harbor搭建(http/https)及使用

1.Habor简介Habor是由VMWare公司开源的容器镜像仓库.事实上,Habor是在Docker Registry上进行了相应的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括:管理用户界面,基于角色的访问控制,AD/LDAP集成以及审计日志等,足以满足基本企业需求.2.安装docker-ce1)安装依赖包[[email protected] opt]# yum install -y yum-utils device-mapper-persistent-data lvm22)下

企业级镜像仓库harbor部署和注意事项

harbor下载地址https://github.com/vmware/harbor/releases需要安装docker-compose#yum install python-pip #pip install docker-compose解压下载的harbor cd harbor修改harbor.cfg这个文件主要需要改动的地方就是hostname和访问协议如果是https访问还需要改动正确的证书位置.然后./prepare 加载配置文件然后./install.sh 安装这个时候就操作完毕可以

docker企业级镜像仓库harbor

第一步:安装docker和docker-compose 第二步:下载harbor-offine-installer-v1.5.1.tgz 第三步:上传到/opt,并解压 第四步:修改harbor.cfg配置文件 hostname = 主机ip harbor_admin_password = 123456 第五步:执行install.sh harbor配置https: 上传证书到任意目录下 证书文件oldqiang.com.zip [[email protected] opt]# mkdir ce

linux运维之路第一篇章:决心书

这一次很有毅力的选择了linux运维的这条路 为什么会这样选择? 自身往技术发展的需求! 身边朋友的推荐! 对在北京生活的一种追求! 来到北京很多人是想着挣钱的,我也是一样,在北京一家不知名的民办学校上了二年学,呵呵,就是野鸡大学,虽然学校对于教育放来来说不是怎么回事,但是对于技术方面还有两把刷子,可能自己对于网络有写喜欢,学了电子商务,工作之后做了SEO优化,到如今也有近两年的时间了.两年自己一直处在底薪阶层(3~6k),然而谁没有一个追求,展现自身更多的价值,拿更高的薪资,过上更好的生活,也