docker 仓库之harbor详解

news/2024/10/19 19:00:05/

Harbor 是一个开源的企业级容器镜像仓库,由 VMware 提供。它基于 Docker 分布式应用程序框架构建,旨在解决企业对容器镜像存储、安全性和可管理性的需求。Harbor 提供了丰富的功能,包括用户权限管理、镜像复制、审计日志、漏洞扫描等,使其成为企业环境中管理 Docker 镜像的理想选择。

主要特性

  1. 用户权限管理

    • 项目管理:支持创建多个项目,每个项目可以有多个用户和团队。
    • 角色分配:为项目成员分配不同的角色(如管理员、开发者、访客),并设置相应的权限。
    • 访问控制:支持基于角色的访问控制(RBAC),确保只有授权用户才能访问特定的镜像。
  2. 镜像复制

    • 同步镜像:支持将镜像从一个 Harbor 实例同步到另一个实例,实现镜像的跨地域分发。
    • 定时任务:可以设置定时任务自动同步镜像,确保镜像的及时更新。
  3. 安全性和合规性

    • 漏洞扫描:集成漏洞扫描工具(如 Clair),定期扫描镜像中的已知漏洞,并生成报告。
    • 内容信任:支持 Docker 内容信任(Notary),确保镜像的完整性和来源可信。
    • 审计日志:记录所有操作日志,帮助管理员追踪和审计系统活动。
  4. 图形化界面

    • Web UI:提供直观的 Web 用户界面,方便用户管理和监控镜像仓库。
    • API 支持:提供 RESTful API,方便与其他系统集成。
  5. 高可用性和扩展性

    • 集群部署:支持集群部署,提高系统的可用性和性能。
    • 水平扩展:可以通过增加节点来扩展系统的处理能力

安装  

k8s-生产实例——二进制集群部署 全网最详细保姆级 零基础也能学会——环境准备2 docker docker-compose harbor 安装_harbor二进制安装-CSDN博客

高级功能

镜像复制
  1. 配置复制规则

    • 在 Web UI 中,进入项目页面,点击“Replication” -> “Create Replication Rule”。
    • 配置源仓库和目标仓库,选择需要同步的镜像和标签,设置同步策略(手动或定时),然后点击“Create”。
  2. 执行复制任务

    • 手动执行复制任务,或等待定时任务自动执行。
漏洞扫描
  1. 启用漏洞扫描

    • 在 Web UI 中,进入项目页面,点击“Security” -> “Vulnerability Scanning”。
    • 启用漏洞扫描功能,配置扫描频率和通知方式。
  2. 查看扫描结果

    • 在镜像详情页面,查看漏洞扫描报告,了解镜像的安全状况。

 


http://www.ppmy.cn/news/1540320.html

相关文章

Linux Ubuntu dbus CAPI ---- #include<dbus.h>出现“无法打开源文件dbus/xxx.h“的问题

一、确保已安装dbus库和CAPI sudo apt-get install libdbus-1-dev 二、在c_cpp_properties.json的includePath中是否配置了dbus库依赖文件所在的路径 三、编译一个简单的dbus代码,在编译过程中只要出现.h文件找不到的情况,就使用下列命令找到.h文件路径…

gaussdb 主备 8 数据库安全学习

1 用户及权限 1.1 默认权限机制-未开启三权分立 1.1.1 数据库系统管理员具有与对象所有者相同的权限。也就是说对象创建后,默认只有对象所有者或者系统管理员可以查询、修改和销毁对象,以及通过GRANT将对象的权限授予其他用户。 1.1.2 GaussDB支持以下的…

《C++23 新特性:现代软件开发的变革力量》

在软件开发的快速演进中,C作为一种强大且广泛应用的编程语言,不断推陈出新以适应日益复杂的开发需求。C23 的到来,为现代软件开发带来了诸多新的机遇和挑战。它的新特性不仅影响着开发者的编程习惯,也在代码效率、可维护性以及软件…

TCP/UDP通信协议

TCP通讯时序 下图是一次TCP通讯的时序图。TCP连接建立断开。包含大家熟知的三次握手和四次挥手。 在这个例子中,首先客户端主动发起连接(connet)、发送请求,然后服务器端响应请求,然后客户端主动关闭连接。两条竖线表…

结构体指针的初始化以及结构体变量作为函数实参传递时易混淆的知识点

结构体指针初始化以及结构体变量作为函数实参传递时易混淆的知识点 首先要明确,结构体类型是用户自己定义的一种数据类型,其本质上与int, char等标准数据类型是一致的 **1.**因此,在进行结构体指针的初始化时,应该这样写&#x…

【Fargo】6:递归加锁的异常

实际运行:mutex递归 【Fargo】5:根据网络带宽动态调整发送速率 需要外部动态改变码率的设定,以此影响包的发送间隔:Exception thrown at 0x76A7B282 in HaloAppPublisher.exe: Microsoft C++ exception: std::system_error at memory location 0x003EEC48. Unhandled excep…

vue3.2实现AES加密解密,秘钥通过API获取,并混淆秘钥,后端thinkphp

aes.ts文件 import CryptoJS from "crypto-js"; import axios from "axios";export const encrypt async(data: any) > {let storeKey sessionStorage.getItem(a)let storeIv:any sessionStorage.getItem(i)// 如果秘钥或 IV 不存在,尝试…

精选20个爆火的Python实战项目(含源码),直接拿走不谢!

今天给大家介绍20个非常实用的Python项目,帮助大家更好的学习Python。 完整版Python项目源码,【点击这里】领取! ① 猜字游戏 import random def guess_word_game(): words ["apple", "banana", "cherry&quo…