docker-harbor 私有仓库

docker 镜像 容器 仓库

仓库:保存镜像

私有,自定义用户的形式登录仓库,拉取或者上传镜像。(内部隔离的用户)

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

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

harbor的特性:

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

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

3,harbor自带一个数据库,AD/LDAP(类似于数据库中的表),对以及存在的用户进行日志和管理。

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

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

6,审计管理,使用对进行仓库的存在都可以被记录溯源。

7,支持API操作,(API的程序接口,端口:主机和主机之间的通信 API是应用和应用之间的接口。)管理员可以基于基于API调用接口,和更多的其他程序进行集成。

harbor的组件:

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

2,Registry:复制存储镜像,docker pull/push的命令都由起负责。用户镜像访问控制,不同的用户对docker镜像由不同的读写权限。Resgistry每次都会指向一个不同的Token,强制用户每次的pull/push,都必须带一个合法的token(公钥对),Registry会通过公钥对,进行解密验证,身份合肥才能指定操作。

3,CORE SERVICES: Harbor的核心功能:提供3个服务:

一,UI:提供图形化界面。

二,Webhook:仓库上使用镜像的变化 (增删改),都会传送给webhook,一实现在UI界面上。

三,Token:签发每一次push和pull的公钥对,用来和仓库之间进行权限认证。

四,database:harbor-db,为和学习core services提供数据库存储服务,用户权限,审计日志 docker镜像的分组和项目信息。

五,job service:主要用于镜像的复制,本地镜像可以同步到远程harbor上

六,log collector(harbor-log):统一日志收集工具。

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

实验:

docker1 安装仓库 docker-ce har-bor docker-compose

docker2 客户端 docker-ce har-bor docker-compose

docker3 安装仓库--实现远程同步 docker-ce har-bor docker-compose

systemctl stop firewalld

systemctl disable firewalld

setenforce 0

cd /opt

安装docker-compose

mv docker-compose-linux-x86_64 docker-compose

mv docker-compose /usr/local/bin/

chmod 777 /usr/local/bin/docker-compose

docker-compose -v

安装harbor

tar -xf harbor-offline-installer-v2.8.1.tgz -C /usr/local

cd /usr/local/harbor/

修改配置文件:

cp harbor.yml.tmpl harbor.yml

vim harbor.yml

hostname: 192.168.176.81

修改为本机地址

harbor_admin_password: 123456

可以修改密码

将https注释

安装:

编译环境:

./prepare

执行脚本:

./install.sh

可以访问页面了

上传镜像

本地主机上传。

拉一个镜像:

docker pull nginx:1.22.0

换标签

docker tag nginx:1.22.0 127.0.0.1/library/nginx:cc1

上传:

docker push 127.0.0.1/library/nginx:cc1

报错:

要先登录才能上传:

docker login -u admin -p123456 http://127.0.0.1

docker push 127.0.0.1/library/nginx:cc1

用新建用户上传

docker login -u chencheng -p Chencheng123 http://127.0.0.1

换标签

docker tag nginx:1.22.0 127.0.0.1/cctest/nginx:cc2

上传: docker push 127.0.0.1/cctest/nginx:cc2

报错:

没有给用户添加角色为开发者

上传成功

角色:

访客:只能看,只有读权限

开发者:可以由读写权限,但是没有删除权限

维护人员:读写权限,修改其他配置项的权限。

项目管理员:拥有该项目的所有权限。

从另一台机子上传

docker login -u chencheng -p Chencheng123 http://192.168.176.81

报错:docker-harbor默认使用http端口,没有的化修改配置文件

vim /usr/lib/systemd/system/docker.service

删除后面的,修改

ExecStart=/usr/bin/dockerd --insecure-registry 192.168.176.81

systemctl daemon-reload

systemctl restart docker

docker login -u chencheng -p Chencheng123 http://192.168.176.81

登录成功:

docker pull logstash

改标签

docker tag logstash:latest 192.168.176.81/cctest/logstash:cc3

docker push 192.168.176.81/cctest/logstash:cc3

实现仓库之间同步:

查看仓库中的镜像

cd /data/registry/docker/registry/v2/repositories/cctest/

在docker3:192.168.176.83

安装harbor docker-compose

12345

把81的镜像拉到83上

只会拉取公开的

可以改变

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

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

相关文章

【刷题笔记】N皇后||回溯||符合思维方式

N皇后II 1 题目详情 n 皇后问题 研究的是如何将 n 个皇后放置在 n n 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回 n 皇后问题 不同的解决方案的数量。 https://leetcode.cn/problems/n-queens-ii/ 2 分析 刚一开始的时候我认…

由@EnableWebMvc注解引发的Jackson解析异常

同事合了代码到开发分支,并没有涉及到改动的类却报错。错误信息如下: Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.http.conv…

【Python机器学习系列】一文讲透机器学习中的K折交叉验证(源码)

一、简介 前面我详细介绍了关于机器学习的归一化和反归一化以及表格数据在机器学习中的输入格式问题: 一文彻底搞懂机器学习中的归一化与反归一化问题 【Python机器学习系列】一文彻底搞懂机器学习中表格数据的输入形式(理论源码) 本文将介绍…

Mysql workbench

下载地址: https://download.csdn.net/download/a876106354/88616595

Numpy: 修改numpy的dtype

要修改NumPy数组的dtype,可以使用astype()方法。这个方法将创建一个新的数组,其数据类型(dtype)由参数指定。 下面是一个例子,展示如何将一个NumPy数组的dtype从int64修改为float32: import numpy as np# 创建一个in…

进程概念【linux】

进程基础 在学习进程之前,首先要有一定的计算机硬件和软件基础。 硬件基础:冯诺依曼体系结构 如图,是计算机在硬件上的体系结构。 下面举出一些常见的输入输出设备(有些设备只作输出设备,或者只作输入设备&#xff…

LLM之Prompt(三)| XoT:使用强化学习和蒙特卡罗树搜索将外部知识注入Prompt中,性能超过CoT,ToT和GoT

​论文地址:https://arxiv.org/pdf/2311.04254.pdf 一、当前Prompt技术的局限性 LLM使用自然语言Prompt可以将复杂的问题分解为更易于管理的“thought”可以回复用户的问题。然而,大多数现有的Prompt技术都有局限性: 输入输出(I…

【QT 5 调试软件+Linux下调用脚本shell-经验总结+初步调试+基础样例】

【QT 5 调试软件Linux下调用脚本shell-经验总结初步调试基础样例】 1、前言2、实验环境3、自我总结4、实验过程(1)准备工作-脚本1)、准备工作-编写运行脚本文件2)、给权限3)、运行脚本 (2)进入q…

pytorch一致数据增强

分割任务对 image 做(某些)transform 时,要对 label(segmentation mask)也做对应的 transform,如 Resize、RandomRotation 等。如果对 image、label 分别用 transform 处理一遍,则涉及随机操作的…

计算机网络网络层(期末、考研)

计算机网络总复习链接🔗 目录 路由算法静态路由与动态路由距离-向量算法链路状态路由算法层次路由 IPv4(这个必考)IPv4分组IPv4地址与NAT子网划分与子网掩码、CIDRARP、DHCP与ICMP地址解析协议ARP动态主机配置协议DHCP IPv6IPv6特点 路由协议…

android studio 创建按钮项目

1&#xff09;、新建一个empty activity项目&#xff0c;切换到project视图&#xff1a; 2&#xff09;、修改app\src\main\res\layout\activity_main.xml文件&#xff0c;修改后如下&#xff1a; <?xml version"1.0" encoding"utf-8"?> <andr…

html基础知识

1、文字阴影代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width, initial-scale1.0"> <meta http-eq…

Vue 工作开发小技巧

一、汇总 ​ 本博客&#xff0c;记录了一些Vue在日常开发工作中比较实用的小技巧&#xff0c;后续会陆续添加更新。 ​ 1、利用Sass的:global定义全局样式。 ​ 2、在<style>内部使用v-bind给CSS属性绑定属性值。 ​ 3、父子组件传值时&#xff0c;使用.sync修饰符后…

cgteamwork与shotgrid对比

最近有项目接触使用并二开cgteamwork&#xff0c; 也重新认识了cgteamwork&#xff0c;感受到国产软件的强大&#xff0c;国内中小CG公司的首选&#xff0c;原因&#xff1a; 1 上手容易&#xff0c;不会的有售前工程师教&#xff0c;他们全国各地城市到处跑。 感概业务的强大…

智能优化算法应用:基于生物地理学算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于生物地理学算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于生物地理学算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.生物地理学算法4.实验参数设定5.算法…

Visual studio+Qt开发环境搭建以及注意事项和打开qt的.pro项目

下载qt-然后安装5.14.2_msvc2017 不知道安装那个就全选5.14.2的父级按钮 https://download.qt.io/archive/qt/5.14/5.14.2/ 安装Visual studio,下载直接下一步就行 配置Visual studio的qt环境 在线安装-重启Visual studio会自动安装 离线安装-关闭Visual studio点击安装 关闭…

桂电|《操作系统》实验一:UNIX/LINUX及其使用环境(实验报告)

桂林电子科技大学2023-2024学年 第 一 学期 操作系统A 实验报告 实验名称 实验一 UNIX/LINUX及其使用环境 实验指导老师&#xff1a; 成绩 院 系 计算机与信息安全学院 专业 计算机科学与技术(卓越工程) 学 号 姓名 课内序…

Spring Boot+FreeMarker=打造高效Web应用

&#x1f973;&#x1f973;Welcome Huihuis Code World ! !&#x1f973;&#x1f973; 接下来看看由辉辉所写的关于Spring BootFreeMarker的相关操作吧 目录 &#x1f973;&#x1f973;Welcome Huihuis Code World ! !&#x1f973;&#x1f973; 一. FreeMarker是什么 二…

本地连锁门店经营可以借助系统实现哪些功能?

不少的连锁门店目前还是很基础的ERPPOS收银&#xff0c;其他的还是走传统的手工管理&#xff0c;大多连锁老板知道借助信息化系统可以帮助门店实现精细化管理&#xff0c;提高运营效率&#xff0c;降低成本&#xff0c;增强竞争力&#xff0c;但不知道怎么去做&#xff0c;能做…

每日汇评:黄金需要突破2050美元的供应区域才能延续复苏

周四早间&#xff0c;金价接近每盎司2,030美元&#xff0c;创下6天来的最高水平&#xff1b; 美联储确认鸽派政策转向&#xff0c;美元和美国国债收益率双双下挫&#xff1b; 英国央行和欧洲央行2023年的最终政策公告可能会进一步推高金价&#xff1b; 随着投资者重新评估美联储…