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差不多 ,就不多演示了

目录
相关文章
|
8月前
|
监控 Linux 持续交付
认识Docker
认识Docker
66 0
|
1月前
|
安全 持续交付 Docker
Docker
Docker 是一种非常有前途的技术,它为应用程序的开发、部署和管理带来了极大的便利,相信在未来会发挥更加重要的作
|
8月前
|
关系型数据库 MySQL Linux
初识 Docker
在这个快速发展的技术时代 , 我们经常面临着应用部署的复杂性、环境差异以及不同操作系统之间的兼容性问题 . 这些问题不仅消耗大量时间 , 还可能导致项目延期和成本增加 . Docker 的出现解决了我们在应用部署过程中遇到的障碍和挑战 . 通过将应用程序及其依赖环境封装在一个轻量级的、可移植的容器中 , Docker 不仅简化了开发和部署流程 , 还确保了不同环境间的无缝衔接和一致性 .
83 9
|
关系型数据库 MySQL Docker
|
运维 Java 程序员
【docker】对docker的理解
【docker】对docker的理解
|
Linux 应用服务中间件 nginx
Docker使用
Docker容器技术入门
107 0
|
JSON API 数据格式
docker详解
docker详解
101 0
|
Kubernetes Linux 持续交付
什么是Docker?
什么是Docker?
147 0
|
安全 Java Linux
|
测试技术 Linux 持续交付
为什么会是Docker?
最近Docker容器化部署特别火热,那为什么说Docker是下一代的容器工具?回答这个问题之前,我们就服务器的历史演变来简单说明一下。
为什么会是Docker?