docker -私有镜像仓库 - harbor安装

文章目录

  • 1、镜像仓库简介
  • 2、Harbor简介
  • 3、下载与安装
    • 3.1、下载
    • 3.2、安装
      • 3.2.1、上传harbor-offline-installer-v2.8.2.tgz到虚拟机中解压并修改配置文件
      • 3.2.2、解压tgz包
      • 3.2.3、切换到解压缩后的目录下
      • 3.2.4、准备配置文件
      • 3.2.5、修改配置文件
  • 4、启动Harbor
  • 5、启动关闭命令
  • 6、访问harbor

docker远程仓库 --》 gitee maven远程仓库
docker局域网仓库 --》 gitlab maven局域网仓库(阿里云镜像仓库)
一般公司开发中将项目的镜像放在局域网docker镜像仓库中管理。


docker:自带的registry镜像仓库过于简单
docker:harbor搭建企业级的私有镜像仓库

1、镜像仓库简介

镜像仓库作用:存储镜像,可以通过镜像仓库实现镜像的共享

镜像仓库的使用流程:
在这里插入图片描述
镜像仓库分类:

1、公有镜像仓库:可以理解成云仓库、公有仓库,是由某个组织、公司维护的仓库,对互联网开放,所有人共享。如官方的仓库docker hub。

2、私有镜像仓库:不对外开放。一般情况下只在公司内网中使用,用于加快镜像拉取速度、维护公司资产。

私有镜像仓库种类:

  • Registry是Docker自带的镜像仓库,部署运行非常简洁,非常适合在测试时使用。

  • Harbor

2、Harbor简介

Harbor是VMware公司开源的企业级DockerRegistry项目,其目标是帮助用户迅速搭建一个企业级的Dockerregistry服务。它以Docker公司开

源的registry为基础,提供了管理UI,基于角色的访问控制(Role Based Access Control),AD/LDAP集成、以及审计日志(Auditlogging) 等企业用户需求的功能,同时还原生支持中文。

3、下载与安装

Harbor被部署为多个Docker容器,因此可以部署在任何支持Docker的Linux服务器上,且需要Docker和Docker Compose才能安装。

3.1、下载

下载地址:https://github.com/goharbor/harbor/releases
在这里插入图片描述

3.2、安装

具体步骤如下所示:

3.2.1、上传harbor-offline-installer-v2.8.2.tgz到虚拟机中解压并修改配置文件

上传到 /opt 目录下

# 解压tgz包
tar -zxvf harbor-offline-installer-v2.8.2.tgz   
# 切换到解压缩后的目录下
cd harbor
# 准备配置文件
cp harbor.yml.tmpl harbor.yml
# 修改配置文件        
vim harbor.yml                                   - hostname修改为自己虚拟机的ip地址- 注释所有的https的配置: 

在这里插入图片描述

在这里插入图片描述

3.2.2、解压tgz包

[root@localhost opt]# tar -zxvf harbor-offline-installer-v2.8.2.tgz
harbor/harbor.v2.8.2.tar.gz
harbor/prepare
harbor/LICENSE
harbor/install.sh
harbor/common.sh
harbor/harbor.yml.tmpl

在这里插入图片描述

3.2.3、切换到解压缩后的目录下

[root@localhost opt]# cd harbor/
[root@localhost harbor]# ls
common.sh  harbor.v2.8.2.tar.gz  harbor.yml.tmpl  install.sh  LICENSE  prepare

3.2.4、准备配置文件

[root@localhost harbor]# cp harbor.yml.tmpl harbor.yml
[root@localhost harbor]# ls
common.sh  harbor.v2.8.2.tar.gz  harbor.yml  harbor.yml.tmpl  install.sh  LICENSE  prepare

3.2.5、修改配置文件

[root@localhost harbor]# vim harbor.yml

在这里插入图片描述

4、启动Harbor

# 进入到 Harbor 的解压目录,执行安装脚本
sh install.sh
[root@localhost harbor]# sh install.sh [Step 0]: checking if docker is installed ...Note: docker version: 24.0.7[Step 1]: checking docker-compose is installed ...Note: Docker Compose version v2.14.2[Step 2]: loading Harbor images ...
21e7914e06fb: Loading layer [==================================================>]  38.39MB/38.39MB
bcd4591a1a5a: Loading layer [==================================================>]  91.73MB/91.73MB
af3f46d7aeca: Loading layer [==================================================>]  3.584kB/3.584kB
5380c26af354: Loading layer [==================================================>]  3.072kB/3.072kB
6462f972b019: Loading layer [==================================================>]   2.56kB/2.56kB
8cb0c83ac487: Loading layer [==================================================>]  3.072kB/3.072kB
cfbe2a0d2719: Loading layer [==================================================>]  3.584kB/3.584kB
e5293f9ebbe6: Loading layer [==================================================>]  20.48kB/20.48kB
Loaded image: goharbor/harbor-log:v2.8.2
5af62c831390: Loading layer [==================================================>]  115.4MB/115.4MB
82534d457de7: Loading layer [==================================================>]  25.09MB/25.09MB
80d2f6e2bcfc: Loading layer [==================================================>]   5.12kB/5.12kB
aefafcd9796f: Loading layer [==================================================>]  6.144kB/6.144kB
97428d289bc9: Loading layer [==================================================>]  3.072kB/3.072kB
c8c0719442e6: Loading layer [==================================================>]  2.048kB/2.048kB
ab5f5c9721f1: Loading layer [==================================================>]   2.56kB/2.56kB
66301f88beb6: Loading layer [==================================================>]   2.56kB/2.56kB
75f328befa4d: Loading layer [==================================================>]   2.56kB/2.56kB
a5b05318c510: Loading layer [==================================================>]  9.728kB/9.728kB
Loaded image: goharbor/harbor-db:v2.8.2
7a03cfe8755a: Loading layer [==================================================>]  5.948MB/5.948MB
96ad7512b4d1: Loading layer [==================================================>]  4.096kB/4.096kB
d92638592515: Loading layer [==================================================>]  3.072kB/3.072kB
48d74f8d036f: Loading layer [==================================================>]  17.57MB/17.57MB
9a03dbb78886: Loading layer [==================================================>]  18.36MB/18.36MB
Loaded image: goharbor/registry-photon:v2.8.2
c00acf6f4f58: Loading layer [==================================================>]  9.095MB/9.095MB
88edeb5b4944: Loading layer [==================================================>]  3.584kB/3.584kB
06d8a79a810a: Loading layer [==================================================>]   2.56kB/2.56kB
9cb5dd968a55: Loading layer [==================================================>]   59.3MB/59.3MB
557ccce847e1: Loading layer [==================================================>]  5.632kB/5.632kB
0a049ad6bb06: Loading layer [==================================================>]  116.7kB/116.7kB
17583ba2a843: Loading layer [==================================================>]  44.03kB/44.03kB
e1c4f1102d2f: Loading layer [==================================================>]  60.26MB/60.26MB
c8ec2ddada08: Loading layer [==================================================>]   2.56kB/2.56kB
Loaded image: goharbor/harbor-core:v2.8.2
aa80393262d7: Loading layer [==================================================>]  9.095MB/9.095MB
215dbb1a04b0: Loading layer [==================================================>]  3.584kB/3.584kB
6f2f5e479755: Loading layer [==================================================>]   2.56kB/2.56kB
147d2759d484: Loading layer [==================================================>]  47.58MB/47.58MB
8a962350165e: Loading layer [==================================================>]  48.37MB/48.37MB
Loaded image: goharbor/harbor-jobservice:v2.8.2
c2d19899aeb5: Loading layer [==================================================>]  5.948MB/5.948MB
c8ae0d52fd08: Loading layer [==================================================>]  4.096kB/4.096kB
2b478b343b5b: Loading layer [==================================================>]  17.57MB/17.57MB
bc764beb6923: Loading layer [==================================================>]  3.072kB/3.072kB
d9a27bb64f03: Loading layer [==================================================>]  31.12MB/31.12MB
b9281342e36e: Loading layer [==================================================>]  49.48MB/49.48MB
Loaded image: goharbor/harbor-registryctl:v2.8.2
49789c5ef6cb: Loading layer [==================================================>]  5.943MB/5.943MB
3c7b6ed957d3: Loading layer [==================================================>]  9.138MB/9.138MB
e9278e51e40e: Loading layer [==================================================>]  14.47MB/14.47MB
95bf8f5d9cb4: Loading layer [==================================================>]  29.29MB/29.29MB
64b7de829423: Loading layer [==================================================>]  22.02kB/22.02kB
474f017f0f6d: Loading layer [==================================================>]  14.47MB/14.47MB
Loaded image: goharbor/notary-signer-photon:v2.8.2
03882daa14fc: Loading layer [==================================================>]   6.48MB/6.48MB
277ca4b6664c: Loading layer [==================================================>]  4.096kB/4.096kB
3195ed08e16d: Loading layer [==================================================>]  3.072kB/3.072kB
1038a66bba4c: Loading layer [==================================================>]  193.4MB/193.4MB
10922dd1f89c: Loading layer [==================================================>]  14.09MB/14.09MB
7fa58b86e316: Loading layer [==================================================>]  208.3MB/208.3MB
Loaded image: goharbor/trivy-adapter-photon:v2.8.2
d9cd76d5991c: Loading layer [==================================================>]  52.85MB/52.85MB
980f48887875: Loading layer [==================================================>]  54.88MB/54.88MB
449a0993722b: Loading layer [==================================================>]  19.41MB/19.41MB
ef82d54c4095: Loading layer [==================================================>]  65.54kB/65.54kB
37ae0fc85f56: Loading layer [==================================================>]   2.56kB/2.56kB
1f410b1e1d0d: Loading layer [==================================================>]  1.536kB/1.536kB
882a66e43a76: Loading layer [==================================================>]  12.29kB/12.29kB
7a5957cadc7f: Loading layer [==================================================>]  2.622MB/2.622MB
e8a3f071c998: Loading layer [==================================================>]  416.8kB/416.8kB
Loaded image: goharbor/prepare:v2.8.2
bc73cb8addc7: Loading layer [==================================================>]  83.81MB/83.81MB
3671a4eef508: Loading layer [==================================================>]    6.1MB/6.1MB
a4eb38fb4116: Loading layer [==================================================>]  1.233MB/1.233MB
Loaded image: goharbor/harbor-portal:v2.8.2
c16f4880a6a0: Loading layer [==================================================>]  84.66MB/84.66MB
f56fbf7243e9: Loading layer [==================================================>]  3.072kB/3.072kB
031e3908240b: Loading layer [==================================================>]   59.9kB/59.9kB
d5e6d4e3eb25: Loading layer [==================================================>]  61.95kB/61.95kB
Loaded image: goharbor/redis-photon:v2.8.2
3b33d3218a04: Loading layer [==================================================>]  9.095MB/9.095MB
df2a1c214a73: Loading layer [==================================================>]  26.03MB/26.03MB
099a3e87a796: Loading layer [==================================================>]  4.608kB/4.608kB
8a8188a617c5: Loading layer [==================================================>]  26.82MB/26.82MB
Loaded image: goharbor/harbor-exporter:v2.8.2
06059da7cd8e: Loading layer [==================================================>]  83.81MB/83.81MB
Loaded image: goharbor/nginx-photon:v2.8.2
d0000dfd32d8: Loading layer [==================================================>]  5.943MB/5.943MB
5c8f6501414b: Loading layer [==================================================>]  9.138MB/9.138MB
4e37ce9ef2f9: Loading layer [==================================================>]  15.88MB/15.88MB
519b1ca3008d: Loading layer [==================================================>]  29.29MB/29.29MB
0497bd0e9332: Loading layer [==================================================>]  22.02kB/22.02kB
88ecfe080b68: Loading layer [==================================================>]  15.88MB/15.88MB
Loaded image: goharbor/notary-server-photon:v2.8.2[Step 3]: preparing environment ...[Step 4]: preparing harbor configs ...
prepare base dir is set to /opt/harbor
WARNING:root:WARNING: HTTP protocol is insecure. Harbor will deprecate http protocol in the future. Please make sure to upgrade to https
Generated configuration file: /config/portal/nginx.conf
Generated configuration file: /config/log/logrotate.conf
Generated configuration file: /config/log/rsyslog_docker.conf
Generated configuration file: /config/nginx/nginx.conf
Generated configuration file: /config/core/env
Generated configuration file: /config/core/app.conf
Generated configuration file: /config/registry/config.yml
Generated configuration file: /config/registryctl/env
Generated configuration file: /config/registryctl/config.yml
Generated configuration file: /config/db/env
Generated configuration file: /config/jobservice/env
Generated configuration file: /config/jobservice/config.yml
Generated and saved secret to file: /data/secret/keys/secretkey
Successfully called func: create_root_cert
Generated configuration file: /compose_location/docker-compose.yml
Clean up the input dirNote: stopping existing Harbor instance ...[Step 5]: starting Harbor ...
[+] Running 10/10⠿ Network harbor_harbor        Created                                                                                                                                                                       0.1s⠿ Container harbor-log         Started                                                                                                                                                                       0.7s⠿ Container harbor-portal      Started                                                                                                                                                                       1.3s⠿ Container registry           Started                                                                                                                                                                       1.5s⠿ Container harbor-db          Started                                                                                                                                                                       1.8s⠿ Container redis              Started                                                                                                                                                                       1.7s⠿ Container registryctl        Started                                                                                                                                                                       1.4s⠿ Container harbor-core        Started                                                                                                                                                                       2.1s⠿ Container harbor-jobservice  Started                                                                                                                                                                       2.7s⠿ Container nginx              Started                                                                                                                                                                       2.7s
✔ ----Harbor has been installed and started successfully.----

在这里插入图片描述

5、启动关闭命令

# 启动 Harbor
docker compose -f docker-compose.yml up -d   
# 关闭 Harbor
docker compose -f docker-compose.yml stop      

6、访问harbor

用户名/密码:admin/Harbor12345
在这里插入图片描述

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

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

相关文章

gitlab添加CI自动测试

1. CI运行规格配置文件.gitlab-ci.yml yml 配置文件语法: https://docs.gitlab.com/17.3/ee/ci/yaml/index.html 添加.gitlab-ci.yml文件并配置 : ## 定义几个阶段 stages: # List of stages for jobs, and their order of execution- buil…

982. 按位与为零的三元组

1. 题目 982. 按位与为零的三元组 2. 解题思路 随机选择两个数,记录两个数的与结果。以及它的次数。 然后再遍历数组,用第三个数去与前两个数的结果,如果等于0,则满足条件。 3. 代码 3.1. 注意点 首先用简单的思路切入&…

【顺序表使用练习】发牌游戏

【顺序表使用练习】发牌游戏 1. 介绍游戏2. 实现52张牌3. 实现洗牌4. 实现发牌5. 效果展示 1. 介绍游戏 首先先为大家介绍一下设计要求 实现52张牌(这里排除大小王)洗牌——打乱牌的顺序发牌——3个人,1人5张牌 2. 实现52张牌 创建Code对象创…

MMD模型及动作一键完美导入UE5-IVP5U插件方案(二)

1、下载并启用IVP5U插件 1、下载IVP5U插件, IVP5U,点击Latest下载对应引擎版本,将插件放到Plugins目录,同时将.uplugin文件的EnableByDefault改为false 2、然后通过Edit->Plugins启用插件 2、导入pmx模型 1、直接在Content的某个目录拖入pmx模型,选择默认参数 2、…

项目实战:k8s部署考试系统

一、新建nfs服务器(192.168.1.44) 1.基础配置(IP地址防火墙等) 2.配置时间同步 [rootlocalhost ~]# yum -y install ntpdate.x86_64 [rootlocalhost ~]# ntpdate time2.aliyun.com 27 Sep 10:28:08 ntpdate[1634]: adjust tim…

【巅峰算力,静谧之作】4卡4090GPU深度学习“静音”服务器

各位同仁,随着人工智能浪潮的汹涌澎湃,我们正步入一个前所未有的创新纪元。在这个充满挑战与机遇的时代,我愈发频繁地在工作场景中邂逅那些致力于深度学习探索的智者们。他们,对计算力的渴望如同对知识的追求一般,永无…

React表单:formik、final-form和react-hook-form

表单无处不在,它是每个网站的必备部分。在用React构建web应用时,处理表单是不可避免的。 你可以选择自己的方式来处理,或者选择社区中现成的库。然而,当你选择一个第三方库时,你会立即面临一个问题:有太多的…

Spring Boot 学习之路 -- 配置项目

前言 最近因为业务需要,被拉去研究后端的项目,代码框架基于 Spring Boot,对我来说完全小白,需要重新学习研究…出于个人习惯,会以 Blog 文章的方式做一些记录,文章内容基本来源于「 Spring Boot 从入门到精…

SpringMVC5-域对象共享数据

目录 使用ServletAPI向request域对象共享数据 使用ModelAndView向request域对象共享数据 使用Model向request域对象共享数据 使用map向request域对象共享数据 使用ModelMap向request域对象共享数据 Model、ModelMap、Map的关系 向session域共享数据 向application域共享…

SQLite3模块使用详解

目录 一、引言 1.1 SQLite3 简介 1.2 Python sqlite3 模块 二、连接数据库 2.1 导入 sqlite3 模块 2.2 连接数据库 2.3 创建游标对象 三、执行 SQL 语句 3.1 创建表 3.2 插入数据 3.3 查询数据 3.4 更新数据 3.5 删除数据 四、处理查询结果 4.1 fetchall() 4.2…

探探Java与python中的闭包

说在前面:在计算机科学中,闭包是指一个函数以及其引用的周围环境(变量)所组成的整体。简单来说,闭包允许一个函数访问并操作其外部函数作用域中的变量,即使外部函数已经执行完毕。 Java函数式编程—闭包&am…

C++map与set

文章目录 前言一、map和set基础知识二、set与map使用示例1.set去重操作2.map字典统计 总结 前言 本章主要介绍map和set的基本知识与用法。 一、map和set基础知识 map与set属于STL的一部分,他们底层都是是同红黑树来实现的。 ①set常见用途是去重 ,set不…

【Java】包装类【主线学习笔记】

文章目录 前言包装类基本数据类型与包装类之间的转换基本数据类型转换为包装类可以通过以下几种方式:包装类转换为基本数据类型可以通过以下几种方式:初始化值不同与String之间的转换 前言 Java是一门功能强大且广泛应用的编程语言,具有跨平台…

“数字武当”项目荣获2024年“数据要素×”大赛湖北分赛文化旅游赛道一等奖

9月26日,由国家数据局、湖北省人民政府指导的首届湖北省数据要素创新大会暨2024年“数据要素”大赛湖北分赛颁奖仪式在湖北武汉举行。由大势智慧联合武当山文化旅游发展集团有限公司参报的武当山“数字武当”项目,荣获文化旅游赛道一等奖。 据悉&#x…

在系统开发中提升 Excel 数据导出一致性与可维护性的统一规范与最佳实践

背景: 在系统开发过程中,数据导出为 Excel 格式是一个常见的需求。然而,由于各个开发人员的编码习惯和实现方式不同,导致导出代码风格不一。有的人使用第三方库,有的人则自定义实现。这种多样化不仅影响了代码的一致性…

【笔记】X射线物理基础

一、X射线衍射分析简史 1895年X射线发现 1896 年 2 月对骨折的观察:G.和 E. Frost是第一个使用 X 射线进行医疗用途 1897 年法国海关官员的行李扫描。 X射线衍射理论1 X射线衍射理论2 元素的特征X射线 X射线光电子的应用 电磁波的粒子属性 X射线层析成像法 X-ray…

结构设计模式 -装饰器设计模式 - JAVA

装饰器设计模式 一. 介绍二. 代码示例2.1 抽象构件(Component)角色2.2 具体构件(Concrete Component)角色2.3 装饰(Decorator)角色2.4 具体装饰(Concrete Decorator)角色2.5 测试 结…

蓝桥杯--STM32G431RBT6(TIM定时器的输出频率和占空比,含详细原理介绍和使用方法)

目录 一、前言 二、代码 实现功能:​编辑 按如图配置 定义变量 编写执行代码 显示在LCD上 加入按键效果 三、效果展示 四、代码开源 一、前言 ARR 即自动重装载值(Auto Reload Register)。相当于一个水杯,水杯容量&am…

SpringCloud-Netflix第一代微服务快速入门

1.springCloud常用组件 Netflix Eureka 当我们的微服务过多的时候,管理服务的通信地址是一个非常麻烦的事情,Eureka就是用来管理微服务的通信地址清单的,有了Eureka之后我们通过服务的名字就能实现服务的调用。 Netflix Ribbon\Feign : 客…

性能测试常见故障和解决思路详解

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 一、性能问题分析流程 1、查看服务器的CPU、内存 、负载等情况,包括应用服务器和数据库服务器 2、查看数据库健康状态,数据库死锁、连…