• Docker--harbor私有仓库部署与管理


    目录

    1.Harbor是什么

    1.1 Harbor的优势

    1.2 Harbor的核心组件

    2.Harbor 部署与应用

    2.1 安装Harbor

     2.2 启动 Harbor

     2.3 创建项目

    3. 维护管理Harbor

    3.1 创建 Harbor 用户


    1.Harbor是什么

    Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署企业内部的私有环境Registry是非常必要的,Harbor和docker中央仓库的关系,就类似于nexus和Maven中央仓库的关系,Harbor除了存储和分发镜像外还具有用户管理,项目管理,配置管理和日志查询,高可用部署等主要功能。

    1.1 Harbor的优势

    1、基于角色控制:有管理员与普通用户,可赋权普通用户,比如只能上传和下载,可根据项目来进行操作和管理
    2、基于镜像的复制策略:也与权限相关,比如有只一些用户与组才能对此项目进行相对应的操作
    3、支持 LDAP/AD:域控制,比如南京去下载北京harbor私有仓库的镜像,两端打上局域网的地址,连接在一块,数据信息的传输通过一条隧道,会通过两层加密,第一层为隧道加密,第二层为数据加密,安全可靠
    4、图像删除和垃圾收集:即回收站机制
    5、图形UI:具有统计功能,比如访问量与镜像下载热度
    6、审计:日志,这里意义不大,主要还是借助于 ELK
    7、RESTful API:定义 web 语言规范的格式,方便调用 Harbor 的接口,也便于二次开发

    1.2 Harbor的核心组件

    • Proxy(代理):Harbor的组件,如注册表,UI和令牌服务,均位于逆向代理之后。代理将来自浏览器和Docker客户端的请求转发到各种后端服务。
    • Registry(image仓库):负责存储Docker Images和处理Docker pull/push命令。由于Harbor需要强制对imagess进行访问控制,Registry会将客户端引导到令牌服务,以获取每个pull或push请求的有效令牌。
    • Core services(核心服务):Harbor核心职能,主要提供以下服务:
    • UI:用于帮助用户管理Registry Webhook上的Images的图形用户界面:Webhook是在注册表中配置的一种机制,以便Registry中的Images状态更改可以填充到Harbor的Webhook端点。Harbor使用webhook更新日志,启动复制和其他一些功能。令牌服务:根据用户对项目的作用,负责为每个停靠点pull/push命令发出令牌。如果从Docker客户端发送的请求中没有令牌,则Registry将将请求重定向到令牌服务。数据库:数据库存储项目,用户,角色,复制策略和图像的元数据。
    • Job services(工作服务):用于Images复制,本地映像可以复制(同步)到其他Harbor实例。
    • Log collector(日志收集器):负责在单个地方收集其他模块的日志。

    2.Harbor 部署与应用

    2.1 安装Harbor

    1. 1)下载或上传 Harbor 安装程序
    2. Harbor的压缩包下载地址:https://github.com/goharbor/harbor/releases
    3. wget http://harbor.orientsoft.cn/harbor-1.2.2/harbor-offline-installer-v1.2.2.tgz
    4. tar zxvf harbor-offline-installer-v1.2.2.tgz -C /usr/local/
    5. 2)修改harbor安装的配置文件
    6. vim /usr/local/harbor/harbor.cfg
    7. 修改,设置为Harbor服务器的IP地址或者域名
    8. hostname = 192.168.112.96
    9. 指定管理员的初始密码,默认的用户名/密码是admin/Harbor12345
    10. harbor_admin_password = Harbor12345

     2.2 启动 Harbor

    1. cd /usr/local/harbor/
    2. 在配置好了 harbor.cfg 之后,执行 ./prepare 命令,为 harbor 启动的容器生成一些必要的文件(环境)
    3. 再执行命令 ./install.sh 以 pull 镜像并启动容器
    4. 4. 查看 Harbor 启动镜像
    5. cd /usr/local/harbor/
    6. docker-compose ps
    7. docker-compose up -d #启动
    8. docker-compose stop #停止
    9. docker-compose restart #重新启动

     完成后,访问harbor主页

     2.3 创建项目

    输入用户名和密码登录界面后可以创建一个新项目。点击“+项目”按钮

    填写项目名称为“myproject-kgc”,点击“确定”按钮,创建新项目

     

    下载镜像进行测试,并根据项目名,修改标签

     上传镜像到 Harbor

     上传完成后,即可在网页上查看

    3. 维护管理Harbor

    3.1 创建 Harbor 用户

    输入用户名等信息 

     添加项目成员

    先写成员信息,并分配项目角色 

     项目成员添加成功 

  • 相关阅读:
    GitHub 上传本地项目代码
    互联网摸鱼日报(2022-10-20)
    易基因|文献科普:DNA甲基化测序揭示DNMT3a在调控T细胞同种异体反应中的关键作用
    6.3二叉树的层序遍历(LC102,LC107-M)
    如何修改域名DNS服务器?修改DNS服务器常见问题汇总
    利用适配器模式使用第三方库
    【python】常见的正则表达式用法;匹配字符串
    rust的Defef和DerefMut学习
    node插件MongoDB(四)—— 库mongoose 的个性话读取(字段筛选、数据排序、数据截取)(四)
    如何在latex中高亮文本
  • 原文地址:https://blog.csdn.net/kid00013/article/details/125502452