docker镜像仓库

news2025/1/12 6:01:14

Hlarbor

harbor是一个开源的云原生镜像仓库, 它允许仓库用户存储,使用docker镜像。可以将harbor看做是私有的dockerhub,它提供了更新安全性和控制性, 让组织能够安全的存储和管理镜像。

harbor RBAC:基于角色访问控制),可以对不同的用户和用户组进行灵活全向控制,并且提供灵活的复制和同步策略,可以实现多个barbor实例的镜像的复制和同步。

Hlarbor的构成

proxy:nginx的前端代理,数据发送请求,会把请求转发给后端。

registry:私有仓库,可以存储镜像,必须进行token认证才能使用。

认证方式有三种:令牌,用户密码和ss1。

Core services:提供图形化界面,可以实时获取image状态变化,提供token服务。

Database(harbor-db):数据库。

Job services:进行镜像复制。

Log collector:负责收集其他组件的操作日志。

Harbor 的每个组件都是以 Doker 容器的形式构建的,因此,使用 Docker Compose 来对它进行部署。总共分为7个容器运行。名称分别为:nginx、harbor-jobservice、harbor-ui、harbor-db、harbor-adminserver、registry、harbor-log。

Hlarbor工作流程

docker私有仓库的过程

1、所有的请求或认为的操作都会首先交给proxy (反向代理)。

2、proxy 会先请求转发给后端 core services。

3、core services包含 uI token(身份认证),webhook (网站的一些服务功能)。

4、转发给reqistry (镜像存储),若需要下载镜像等权限操作,需要通过core services中token令牌的身份验证服务才行。

5、每一次下载和上传都会产生操作记录,生成日志,保存在database中。

6、database 记录保存镜像元信息及用户与组的身份信息,通过验证授权才能允许相关操作。

Harbor 特性

基于角色访问控制

基于镜像的复制策略

支持 LDAP/AD

镜像删除和垃圾回收

支持图形化界面

审计管理

支持restful API

创建私有仓库

1、下载 registry 镜像

docker pull registry

添加私有镜像仓库地址

systemctl restart docker.service

运行 registry 容器
docker run -itd -v /data/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest

为镜像打标签
docker tag centos:7 192.168.11.11:5000/centos:v1

上传到私有仓库
docker push 192.168.11.11:5000/centos:v1

列出私有仓库的所有镜像
curl http://192.168.11.11:5000/v2/_catalog

出私有仓库的 centos 镜像有哪些tag
curl http://192.168.11.11:5000/v2/centos/tags/list

删除原有的 centos 的镜像,再测试私有仓库下载
docker rmi -f 8652b9f0cb4c
docker pull 192.168.11.11:5000/centos:v1

部署 Harbor

下载或上传 Harbor 安装程序
wget http://harbor.orientsoft.cn/harbor-1.2.2/harbor-offline-installer-v1.2.2.tgz

tar zxvf harbor-offline-installer-v1.2.2.tgz -C /usr/local/

修改harbor安装的配置文件
vim /usr/local/harbor/harbor.cfg
--5行--修改,设置为Harbor服务器的IP地址或者域名
hostname = 192.168.10.23
--59行--指定管理员的初始密码,默认的用户名/密码是admin/Harbor12345
harbor_admin_password = Harbor12345
启动 Harbor
查看 Harbor 启动镜像
cd /usr/local/harbor/
docker-compose ps

浏览器访问:http://192.168.10.23 登录 Harbor WEB UI 界面,默认的管理员用户名和密码是 admin/Harbor12345

下载镜像进行测试
docker pull nginx

将镜像打标签
格式:docker tag 镜像:标签  仓库IP/项目名称/镜像名:标签
docker tag nginx:latest 127.0.0.1/myproject-kgc/nginx:v1

上传镜像到 Harbor
docker push 127.0.0.1/myproject-kgc/nginx:v1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1132301.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ImportError: DLL load failed: 找不到指定的模块。解决方法 from ._nnls import nnls 报错

实验时遇到过如下错误 ImportError: DLL load failed: 找不到指定的模块。 往前查看错误位置发现如下错误 from ._nnls import nnls 或者 from scipy import special, optimize, from ._nnls import nnls 解决方法: 依次执行下述命令 conda remove --force numpy …

[大三上]区块链和分布式计算

[大三上]区块链和分布式计算 区块链中的分布式系统: 分布式最大的应用: 区块链, 分布式系统是区块链的一个基础 分布式计算: 分布式计算(Distributed Computing):指将一个计算任务分解成多个子任务,分配给不同的计算节点&#…

项目管理-2023西电网课课后习题答案-第三章

文章目录 第三章答案1-1011-2021-3031-4041-5051-6061-7071-80 [✅] 第一章答案[✅] 第二章答案[✅] 第三章答案[✅] 第四章答案 第五章答案 第三章答案 1-10 11-20 21-30 31-40 41-50 51-60 61-70 71-80

VSCode 自动修改闭合标签

1.打开应用商店,搜索 auto rename tag ,选择第一个,点击安装。 2.安装完毕后随便打开一个 HTML 文件,当我们修改起始标签时,闭合标签也会自动更改。 原创作者:吴小糖 创建时间:2023.10.25

高德 几千条数据,点标记Marker转海量标注 LabelMarker

** 高德地图说: 当需要在地图添加千级以上的点标记时,LabelMarker 是代替 Marker 的更好选择。 ** 如图,当数据量超过两千时,如果我们使用的是Marker点标记,页面将会非常的卡,卡顿很久都不出现标记点。因此…

NFS网盘挂载-Ubuntu(linux)

我有2台机器,我想把A机器挂载到B机器上。 NFS安装 B机器执行-服务端:sudo apt-get install nfs-kernel-server A机器执行-客户端:sudo apt-get install nfs-common 指定共享盘 进入B机器,配置共享盘 创建需要让别人访问的目录…

Pytorch:model.train()和model.eval()用法和区别,以及model.eval()和torch.no_grad()的区别

1 model.train() 和 model.eval()用法和区别 1.1 model.train() model.train()的作用是启用 Batch Normalization 和 Dropout。 如果模型中有BN层(Batch Normalization)和Dropout,需要在训练时添加model.train()。model.train()是保证BN层能够用到每一…

时尚女童卫衣—Get麻麻同款和宝贝一起穿

分享女儿的时尚穿搭—卫衣 不知道各位姐妹那边的天气如何 我们这边现在穿卫衣刚刚好 这件卫衣百搭圆领,经典的额版哦 加绒卫衣特别保暖 卡通鹅的图案宝贝特别喜欢 和宝贝一起穿亲子装真的很幸福!

记录一次“超出内存限制”的原因

问题: 问题的来源是力扣的这一条题目:LCR 048. 二叉树的序列化与反序列化 - 力扣(LeetCode) 我寻思着也没啥,就前序遍历呗,时间和空间复杂度都是O(n),应该能把题目K掉。 问题代码: /*** Defini…

InCopy 2024 v19.0.0.151(文案撰写与编辑软件)

InCopy 2024 for Mac是一款文案撰写与编辑软件,适用于在Mac上进行文字编辑和排版工作。它是Adobe Creative Cloud套件中的一部分,主要面向文字编辑人员、作家和出版团队,提供了一系列强大的功能,以协同工作和改进工作流程。 InCo…

学校巡课工具,这次真包教包会!

随着教育领域的不断发展和科技的快速进步,在线巡课系统已经成为一种强大的工具,为学校、教育机构和教育者提供了全新的教学监督和评估方式。 客户案例 中学巡课项目 成都某中学面临着监督和改进教学质量的挑战。泛地缘科技推出的在线巡课系统&#xff0c…

欧拉图相关的生成与计数问题探究

最近学了一波国家集训队2018论文的最后一个专题。顺便带上了一些我的注解。 先放一波这个论文 1.基本概念 欧拉图问题是图论中的一类特殊的问题。在本文的介绍过程中,我们将会使用一些图 论术语。为了使本文叙述准确,本节将给出一些术语的定义。 定义…

嵌入式软件找实习需要掌握哪些知识?

嵌入式软件找实习需要掌握哪些知识? 嵌入式软件实习暂时不用刷力扣。具体需要掌握哪些知识每个公司的要求都不太一样,因为嵌入式也有很多细分领域,单片机、C语言是需要熟悉的,最近很多小伙伴找我,说想要一些嵌入式资料…

基于springboot实现篮球论坛管理系统项目【项目源码+论文说明】

基于springboot实现篮球论坛管理系统演示 摘要 首先,论文一开始便是清楚的论述了系统的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了系统的需求基础上需要进一步地设计系统,主要包罗…

前端应用发布到nodejs server后浏览器刷新404问题

现象:Angular、Vue和React项目SPA应用如果路由模式为history,部署到服务器后,点击浏览器刷新按钮会出现404。 原因:当路由模式为history的时候,服务器端会根据浏览器中的请求地址去匹配资源,此时服务器端没…

安卓恶意应用识别(四)(特征处理与分类模型构建)——终结

前言 前面三章将数据初步整理出来: 1.安卓恶意应用识别(一)(Python批量爬取下载安卓应用) 2.安卓恶意应用识别(二)(安卓APK反编译) 3.安卓恶意应用识别(三&a…

一张Lambda大数据架构架构图

架构图 大数据的架构包括了Lambda架构和Kappa架构,Lambda架构分解为三层:即批处理层、加速层和服务层;Kappa架构不同于Lambda同时计算流计算和批计算并合并视图,Kappa只会通过流计算一条的数据链路计算并产生视图。 该系统的大数…

1024程序员节|是时候,展示真正的实力了!

“代码改变世界,开源创造未来” 一年一度的程序员节如期而至! 在由“0”和“1”构建的二进制世界里 运行程序的硬件进制基础是“1024” 因此,将每一年的10月24日定为“程序员节” 而作为码出每一个1024的程序员 则是这个“二进制世界”里…

*Django中的Ajax jq的书写样式1

导入插件,导入jquery,json是添加的json文件 Ajax的get请求与post请求 urls.py path(in3/,views.in3), views.py def in3(request):return render(request,07.html) 要返回数据的path没有写,html就是下面图片中控制台的内容,记得传递参数…

图片gif怎么做?这一招分分钟制作

在现代的通讯工具中,gif动态表情已经是人们日常必不可少的一种交流工具了。当我们想要自己制作gif动画图片的时候该怎么办呢?这时候,只需要使用GIF中文网的gif图片制作(https://www.gif.cn/)功能,上传多张静…