docker-harbor私有仓库

docker-harbor私有仓库

仓库:保存镜像

私有:自定义用户的形式登陆仓库,拉取或者上传镜像。(内部管理的用户)

harbor是什么

是VMware公司开发的,开源的企业级的docker registry项目。

帮助用户快速的搭建一个企业级的docker仓库的服务。

支持中文。

harbor的特性

1.基于角色进行控制,用户和仓库都是基于项目进行的,用户在每个项目中开源拥有不同的权限。

2.基于镜像,在不同的harbor实例之间进行复制。

3.harbor自带一个数据库,AD/LDAP(类似于数据库的表),对已经存在的用户进行认证和管理。

4.镜像删除和垃圾回收,仓库中的镜像可以被删除(基于权限控制),也可以回收镜像占用的空间

5.图形化界面,用户可以直接通过了浏览器来对镜像仓库进行管理

6.审计管理,所有对镜像仓库的操作都可以被记录到溯源。

7.支持API操作,

API的程序接口 端口:主机与主机之间的通信

而API是应用和应用之间的接口。

有了API,管理员可以基于API调用接口,和更多的其他程序进行集成。

harbor的组件

1.proxy:

安装完了harbor之后,他会自动生成一个nginx的容器,自动对外映射,80端口,nginx前端代理,在harbor当中 registry,UI,TOKEN,都在nginx的反向代理后面。通过nginx的代理,可以把请求转发到后端不同应用。

2.Registry:

负责存储镜像,所有的docker pull/pull的命令都有其负责。用户进行访问控制。不同的用户对docker的镜像有不同的操作(读写)权限。

这种情况,registry每次都会指向一个不同的TOKEN,强制用户每次的pull/push,都必须带一个合法的 token(公钥对),registry会通过公钥对,进行解密验证,身份合法才能指定操作。

3.CORE SERVICES:

harbor的核心功能(提供三个服务)

  • 1.UI:提供图形化界面。
  • 2.webhook:仓库上所有镜像的变化(增删改的记录),都会传送给webhook,以实现在UI界面。
  • 3.token:签发每一次push和pull的公钥对,用来对和仓库之间进行权限认证。
  • 4.database:harbor-db,为核心组件core services提供数据库存储服务,用户权限,审计日志 docker镜像的分组和项目信息。
  • 5.job service:主要用于镜像的复制,本地镜像可以同步到远程harbor上
  • 6.log collector(harbor-log)统一日志收集工具

harbor都是基于docker容器化部署的,docker-compose一键编排,安装。

复制代码
tar -xf .... -C ./usr/local
cd /usr/local/harbor/
cp harbor.yml.tmpl

保存镜像的位置

本地主机上传镜像

复制代码
docker pull nginx:1.22.0
docker tag nginx:1.22.0 127.0.0.1/library/nginx:dn1
docker images
docker login -u admin -p 123456 http://127.0.0.1
docker push 127.0.0.1/library/nginx:dn1

相关推荐
乘云数字DATABUFF16 小时前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Patrick_Wilson1 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
Suroy2 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭2 天前
运行你的第一个Docker容器
后端·docker·容器
荣--3 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森3 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
宋均浩3 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
Avan_菜菜3 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
程序员老赵3 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程
WangMingHua1113 天前
LM Studio Docker 部署——本地大模型一键启动
docker