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 动态壁纸文件…...
【软件工程】模块化思想概述
一、定义 模块化(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、视图中心->视图锁定->选择你想看的物体...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八
现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...
Fabric V2.5 通用溯源系统——增加图片上传与下载功能
fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

NXP S32K146 T-Box 携手 SD NAND(贴片式TF卡):驱动汽车智能革新的黄金组合
在汽车智能化的汹涌浪潮中,车辆不再仅仅是传统的交通工具,而是逐步演变为高度智能的移动终端。这一转变的核心支撑,来自于车内关键技术的深度融合与协同创新。车载远程信息处理盒(T-Box)方案:NXP S32K146 与…...

Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战
说明:这是一个机器学习实战项目(附带数据代码文档),如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下,风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...
DiscuzX3.5发帖json api
参考文章:PHP实现独立Discuz站外发帖(直连操作数据库)_discuz 发帖api-CSDN博客 简单改造了一下,适配我自己的需求 有一个站点存在多个采集站,我想通过主站拿标题,采集站拿内容 使用到的sql如下 CREATE TABLE pre_forum_post_…...

Spring AOP代理对象生成原理
代理对象生成的关键类是【AnnotationAwareAspectJAutoProxyCreator】,这个类继承了【BeanPostProcessor】是一个后置处理器 在bean对象生命周期中初始化时执行【org.springframework.beans.factory.config.BeanPostProcessor#postProcessAfterInitialization】方法时…...

Tauri2学习笔记
教程地址:https://www.bilibili.com/video/BV1Ca411N7mF?spm_id_from333.788.player.switch&vd_source707ec8983cc32e6e065d5496a7f79ee6 官方指引:https://tauri.app/zh-cn/start/ 目前Tauri2的教程视频不多,我按照Tauri1的教程来学习&…...
stm32进入Infinite_Loop原因(因为有系统中断函数未自定义实现)
这是系统中断服务程序的默认处理汇编函数,如果我们没有定义实现某个中断函数,那么当stm32产生了该中断时,就会默认跑这里来了,所以我们打开了什么中断,一定要记得实现对应的系统中断函数,否则会进来一直循环…...