docker-harbor

简介: docker 是当下 最火的技术之一
                        Harbor

Harbor主要功能
(1)基于角色访问的控制(RBAC)
在企业中,通常有不同的开发团队负责不同的额项目,镜像像代码一样,每个人角色不同需求也不同,因此就需要访问权限控制,根据角色分配相应的权限。
例如,开发人员需要对项目构建就用到读写权限(push/pull)测试人员只需要读权限(pull)
,运维人员需要管理镜像仓库,具备分配能力,项目经理具有所有权限
(2)镜像复制
可以将仓库中的景象同步到远程的Harbor,类似Mysql主从同步功能。
(3)LDAP
Harbor支持LDAP认证,可以很轻松接入已有的LDAP
(4)镜像删除和空间回收
Harbor支持在web删除镜像,回收无用的镜像,释放磁盘空间
(5)图形页面管理
用户很多的方面搜索镜像及项目管理
(6)审计
对仓库的所有操作都有记录
(7)REST API
完整的API 方便与外部集成
Harbor组件
组件 功能
Harbor-adminserver 配置管理中心
Harbor-db Mysql数据库
Harbor-jobservice 负责镜像复制
Harbor-log 记录操作日志
Harbor-ui Web管理页面和api
Nginx 前端代理
Redis 会话
Registry 镜像存储
Harbor部署

Harbor的安装方式有3种

 在线安装 :从Docker hub下载相关镜像,因此软件包非常小
 离线安装:安装包包含部署的相关的镜像,因此安装包比较大
 OVA安装程序 :当用户具有vCenter环境时,使用此程序,在部署OVA后启动Habor
这里我们猜用的是离线安装,首先下载离线安装包
wget -c https://storage.googleapis.com/harbor-releases/release-1.7.0/harbor-offline-installer-v1.7.0.tgz

在此之前安装一些依赖

yum install epel-release -y 
yum install python-pip -y
pip install --upgrade pip -i  http://pypi.douban.com/simple --trusted-host  pypi.douban.com -i  http://pypi.douban.com/simple --trusted-host  pypi.douban.com
pip install docker-compose
基本配置:
tar  xf harbor-offline-installer-v1.7.0.tgz
cd harbor
sed -i 's/hostname=*/hostname=192.168.188.129/g' $(find / name harbor.cfg)
sed -i 's/harbor_admin_password*/harbor_admin_password=Habor12345' $(find / -name harbor.cfg)

安装并启动
./install/sh
查看运行状态
docker-compose ps

登录web页面
浏览器输入: http://192.168.188.129
账号 admin
密码Harbor12345

Lirary项目赋予新用户push权限
先创建一个用户:

进入library项目,将用户加入这个成员:

这样jackios用户就具备了对这个library项目push权限
上传镜像
接下里将刚才构建的镜像推送到Harbor仓库,先看看要推送的镜像

在推送之前 ,需要注意一个问题,这个完整是:

若果是只放在本地存储REPOSITORY写什么都可以,但是推送到镜像仓库就必须指定仓库中心地址,所以,先打重命名RESPOSTORY,其实就是引用镜像标记了一个目标镜像:

这里登录下 账号是jackios(在harbor创建的)

若是遇到问题在/docker/daemon.json添加如下参数
重启docker以及docker-compose

在web页面上观察下,从以下观察我们有一部是多余一层目录 lilbrary会自动添加

下拉镜像和push差不多 ,就不多演示了

目录
相关文章
|
1月前
|
存储 安全 数据安全/隐私保护
在Docker中,Docker安全么?
在Docker中,Docker安全么?
|
1月前
|
运维 持续交付 Docker
在Docker中,Docker可以用来做什么?
在Docker中,Docker可以用来做什么?
|
4月前
|
Linux Go 开发者
Docker(一):认识Docker
Docker(一):认识Docker
|
4月前
|
运维 Java 虚拟化
[Docker] Docker为什么出现
[Docker] Docker为什么出现
|
4月前
|
JavaScript Linux Docker
【Docker】什么是Docker?
【4月更文挑战第20天】【Docker】什么是Docker?
|
运维 Java 程序员
【docker】对docker的理解
【docker】对docker的理解
|
11月前
|
Linux 应用服务中间件 虚拟化
初识Docker
初识Docker
|
Linux 测试技术 API
【Docker】Docker最近这么火,它到底是什么
【Docker】Docker最近这么火,它到底是什么
|
存储 运维 Kubernetes
为什么会有docker?Docker 是什么?
深入剖析Kubernetes学习笔记
141 0
|
Linux 测试技术 API
【Docker】什么是Docker,它用来干什么
【Docker】什么是Docker,它用来干什么
303 0