当前位置: 首页 > news >正文

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
在这里插入图片描述

相关文章:

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、启动Harbor5、启动关闭命令6、…...

头号积木玩家——软件工程专业职业生涯规划报告

说明:本报告为博主在浙江科技学院(现浙江科技大学)就读软件工程本科专业时,在必修课程《计算机导论》中撰写的报告。(报告主体2021年11月定稿,有删改) 标题说明:在电影《头号玩家》…...

Redis(初步认识和安装)

初识Redis 认识NoSQLSQL结构化:structure关联的:RelationalSQL查询ACID NoSQL非结构化无关联的非SQLBASE 认识Redis安装Redis 认识NoSQL SQL和NoSQL比较 SQL 结构化:structure 数据库中表的字段都有固定的结构 关联的:Relati…...

计算机网络:计算机网络概述:网络、互联网与因特网的区别

文章目录 网络、互联网与因特网的区别网络分类 互联网因特网基于 ISP 的多层次结构的互连网络因特网的标准化工作因特网管理机构因特网的组成 网络、互联网与因特网的区别 若干节点和链路互连形成网络,若干网络通过路由器互连形成互联网 互联网是全球范围内的网络…...

网络编程套接字TCP

前集回顾 上一篇博客中我们写了一个UDP的echo server,是一个回显服务器:请求是啥,响应就是啥 一个正常的服务器,要做三个事情: 读取请求并解析根据请求,计算响应把响应写回到客户端 DatagramPacket res…...

Git

Git-2.34.1-64-bitGit-2.34.1-64-bitTortoiseGit-2.4.0.2-64bitTortoiseGit-LanguagePack-2.4.0.0-64bit-zh_CN 下载Git-2.34.1-64-bit、TortoiseGit-2.4.0.2-64bit、TortoiseGit-LanguagePack-2.4.0.0-64bit-zh_CN,依次安装。 # 配置本地Git的用户名与邮箱 git c…...

【日常记录】现在遇到的Y7000P亮度无法调节问题,无需改动注册表进行调整的方法。

1、winR 2、输入:services.msc 3、找到下面红框内的服务 4、右键后,点击重启任务,重启任务后,再次按热键即可恢复亮度调节。...

ubuntu20.04.6 触摸屏一体机,外接视频流盒子开机输入登录密码触屏失灵问题解决方法

1. 首先直接运行xrandr命令,查看设备的相关信息: 运行之后会显示当前连接设备的屏幕信息,如下图,LVDS和VGA-0,而HDMI屏幕为disconnect,意为没有连接: 2. 设置开机主屏幕显示: xrand…...

师生健康信息管理:SpringBoot技术指南

第3章 系统分析 3.1 需求分析 师生健康信息管理系统主要是为了提高工作人员的工作效率和更方便快捷的满足用户,更好存储所有数据信息及快速方便的检索功能,对系统的各个模块是通过许多今天的发达系统做出合理的分析来确定考虑用户的可操作性,…...

手机/平板端 Wallpaper 动态壁纸文件获取及白嫖使用指南

Wallpaper 动态壁纸文件获取及使用指南 目录 壁纸文件获取手机 / 平板使用手机 / 平板效果预览注意事项PC/Mac 使用 1. 壁纸文件获取链接 链接:夸克网盘分享 复制链接到浏览器打开并转存下载即可。 (主页往期视频的 4K 原图和 mpkg 动态壁纸文件&#xf…...

【软件工程】模块化思想概述

一、定义 模块化(modularization),也称为模组化,是产品设计以及项目管理中被广泛使用的一种设计理念。 模块化是指解决一个复杂问题时自顶向下逐层把系统划分成若干模块的过程,有多种属性,分别反映其内部…...

解决方案:机器学习中,出现欠拟合和过拟合,这两种情况分别如何解决

文章目录 一、现象二、解决方案欠拟合(Underfitting)过拟合(Overfitting) 一、现象 在工作中,在机器学习中,出现欠拟合和过拟合的时候,需要有对应的解决方法,所以整理一下 二、解决…...

腾讯 25 届秋招算法工程师面经

最近已有不少大厂都在秋招宣讲了,也有一些在 Offer 发放阶段。 节前,我们邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。 针对新手如何入门算法岗、该如何准备面试攻略、面试常考点、大模型技术趋势、算法项目落地经验分享等热门话题进行了…...

MySQL 实验1:Windows 环境下 MySQL5.5 安装与配置

MySQL 实验1:Windows 环境下 MySQL5.5 安装与配置 目录 MySQL 实验1:Windows 环境下 MySQL5.5 安装与配置一、MySQL 软件的下载二、安装 MySQL三、配置 MySQL1、配置环境变量2、安装并启动 MySQL 服务3、设置 MySQL 字符集4、为 root 用户设置登录密码 一…...

开源黑科技!Fish Speech TTS模型完美支持8种语言

开源黑科技!Fish Speech TTS模型完美支持8种语言 Fish Speech是一款神奇的AI语音克隆工具🎤,可快速模仿用户声音,支持八种语言🌍,简单易用,适合所有人👶。它在客服、新闻播报和在线…...

算法知识点————数论和链表

1、n数和 2数和 有序(递增):头尾相加,和目标值比较无序:哈希表(target - cur) 多数和: ​ 先排序 拿一个数(检测 i 和i-1 重复的不选择) ​ 2数和问题 &am…...

NASA:ATLAS/ICESat-2 L3B 每日和每月网格极地海面高度异常 V003

目录 简介 摘要 代码 引用 网址推荐 0代码在线构建地图应用 机器学习 ATLAS/ICESat-2 L3B Daily and Monthly Gridded Polar Sea Surface Height Anomaly V003 ATLAS/ICESat-2 L3B 每日和每月网格极地海面高度异常 V003 简介 ATLAS/ICESat-2 L3B Daily and Monthly G…...

Java类设计模式

1、单例模式 核心:保证一个类只有一个对象,并且提供一个访问该实例的全局访问点 五种单例模式:主要:饿汉式:线程安全,调用效率高,不能延时加载懒汉式:线程安全,调用效率…...

Valhalla实现 使用Docker部署利用OSM(Mapbox)地图实现路径规划详细步骤

一. Valhalla基本概念 1. 背景介绍: 官网介绍文档:https://valhalla.github.io/valhalla/ Valhalla是一个开源的路由引擎,能够实现实时路径规划,处理大量请求返回最优路径。 基于 OSM 数据,结合灵活的多模式交通方式…...

blender解决缩放到某个距离就不能继续缩放

threejs中也存在同样的问题,原因相同,都是因为相机位置和相机观察点距离太近导致的。 threejs解决缩放到某个距离就不能继续缩放-CSDN博客 blender中的解决方案 1、视图中心->视图锁定->选择你想看的物体...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八

现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

解锁数据库简洁之道:FastAPI与SQLModel实战指南

在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...

对WWDC 2025 Keynote 内容的预测

借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...

关键领域软件测试的突围之路:如何破解安全与效率的平衡难题

在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件,这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下,实现高效测试与快速迭代?这一命题正考验着…...

【JVM】Java虚拟机(二)——垃圾回收

目录 一、如何判断对象可以回收 (一)引用计数法 (二)可达性分析算法 二、垃圾回收算法 (一)标记清除 (二)标记整理 (三)复制 (四&#xff…...

iview框架主题色的应用

1.下载 less要使用3.0.0以下的版本 npm install less2.7.3 npm install less-loader4.0.52./src/config/theme.js文件 module.exports {yellow: {theme-color: #FDCE04},blue: {theme-color: #547CE7} }在sass中使用theme配置的颜色主题,无需引入,直接可…...

6️⃣Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙

Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙 一、前言:离区块链还有多远? 区块链听起来可能遥不可及,似乎是只有密码学专家和资深工程师才能涉足的领域。但事实上,构建一个区块链的核心并不复杂,尤其当你已经掌握了一门系统编程语言,比如 Go。 要真正理解区…...

基于开源AI智能名片链动2 + 1模式S2B2C商城小程序的沉浸式体验营销研究

摘要:在消费市场竞争日益激烈的当下,传统体验营销方式存在诸多局限。本文聚焦开源AI智能名片链动2 1模式S2B2C商城小程序,探讨其在沉浸式体验营销中的应用。通过对比传统品鉴、工厂参观等初级体验方式,分析沉浸式体验的优势与价值…...

本地部署drawDB结合内网穿透技术实现数据库远程管控方案

文章目录 前言1. Windows本地部署DrawDB2. 安装Cpolar内网穿透3. 实现公网访问DrawDB4. 固定DrawDB公网地址 前言 在数字化浪潮席卷全球的背景下,数据治理能力正日益成为构建现代企业核心竞争力的关键因素。无论是全球500强企业的数据中枢系统,还是初创…...