LaoCat带你认识容器与镜像(番外一【Harbor】)

news2024/12/24 3:14:08

祝大家开工大吉呀,新的一年要有新的收获呀 ~

本章内容

搭建Docker镜像私仓Harbor,并配置Docker私仓。

本文实操全部基于Ubuntu 20.04
宿主机 => linux服务器本身
Harbor => 2.5.3

Docker系列文章之仓库篇就介绍了Docker有俩种类型的镜像仓库,一种是公有仓库、一种是私有仓库,今天我们补上系列的番外之一,Docker私有镜像仓库Harbor的搭建教程,相比于其他私有镜像仓库而言,Harbor有着自身的优势,提供了更好性能与安全的,可视化的界面,企业级的、丰富的功能等等。


前置准备工作

首先安装Harbor需要用到Docker-Compose,我们只需要到DaoCloud进行安装即可,这样避免了镜像下载慢、下载失败的问题等等,访问DaoCloud,复制下图命令到宿主机粘贴运行即可。

安装成功后执行命令docker-compose version,即可查看是否安装成功,docker-compose的命令大同小异于Docker,这个会再后续的章节进行展开,本章主要以Harbor为主。

接下来我们需要到HarborGithub仓库下载对应版本的源文件,文中版本是v2.5.3,采用的离线安装包,找到对应的版本后,点击对应安装包下载即可。

有下载慢的童鞋可以执行搜索解决,也可以采用wget的方式进行下载,如果下载也慢,推荐使用GitHub Proxy进行下载,复制下载地址到GitHub Proxy,然后点击下载后复制对应下载链接,如下图所示。

Harbor分为HttpHttps俩种安装方式,我们选择Https,用openssl申请的证书,在正式生产环境可以用各云厂商提供的域名与证书,创建对应存放证书的目录与数据目录,也可以不创建就在当前目录。

mkdir -p /ha/sec/cret /ha/data

进入到该目录我们准备生成对应的证书,我们这里准备用到的hostnameharbor1hostname需要指向宿主机ip,当然你可以用任意hostname,但是需要注意下方命令也需要对应的更改,执行相关命令。

# 生成CA证书 这里是365天
openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -subj "/CN=harbor1" -days 365 -out ca.crt
# 生成harbor主机证书申请
openssl req -newkey rsa:4096 -nodes -sha256 -subj "/CN=harbor1" -keyout harbor1.key -out harbor1.csr
# 颁发证书到harbor主机
openssl x509 -req -in harbor1.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out harbor1.crt

可以看到对应目录下生成的证书,这个会再配置阶段用到。


配置阶段

我们执行命令tar -zxvf harbor-offline-installer-v2.5.3.tgz,将下载下来的Harbor离线安装包进行解压,解压后得到的目录中不存在harbor.yml,我们需要执行命令cp harbor.yml.tmpl harbor.yml,复制一份模板生成配置文件,编辑配置文件,进行相应的更改。

hostname更改为生成证书时用到的hostname,将证书与私钥进行相应的配置即可,然后我们修改对应的密码与数据目录,密码和数据目录都可以不进行修改,当然我喜欢修改后好方便自己把控。

配置完Harbor的配置文件,我们还需要将刚刚的hostname配置到对应的hosts文件中,编辑hosts文件,配置宿主机ip到hostname


安装阶段

接下来就比较简单了,只要上边的准备阶段和配置阶段没有问题,我们只需要执行以下命令,耐心等待即可。

./prepare 
./install.sh


出现该信息,代表安装成功,我们访问配置好的路径进行访问Harbor

使用初始账号密码登录,admin\配置文件中的密码,登录后即可看到对应页面,恭喜你,证明Harbor已经安装成功。


配置Docker私仓

我们修改Docker配置文件,vim /etc/docker/daemon.json,新增如下"insecure-registries": ["192.168.1.98:443"],ip为自己宿主机的ip,前边访问地址。

因为是Https方式配置并安装的Harbor,故Docker登录需要进行额外配置,在Docker目录下新建文件夹mkdir -p certs.d/<你的hostname>/,并将对应证书复制到该目录下,执行命令如下。

然后重启Dockersystemctl daemon-reloadsystemctl restart docker

执行Docker登录。


验证Harbor私仓

我们在Harbor创建一个项目,将之前章节的nginx,重新打一个tag,并执行上传。


然后查看对应项目中是否存在该镜像。

是我们刚刚上传的镜像,恭喜你,你已经学会如何使用Docker的私仓Harbor了。


☆ 参考文献:
【搭建docker私有仓库:Harbor,版本:v2.4】
https://blog.csdn.net/qq_39677803/article/details/122324075

◎ 文中所用到的资源链接:
【DaoCloud | 安装Docker Compose】
https://get.daocloud.io/#install-compose
【Harbor v2.5.3】
https://github.com/goharbor/harbor/releases

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

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

相关文章

AppShark:一款针对Android应用程序的静态分析与漏洞扫描框架

关于AppShark AppShark是一款针对Android应用程序的安全测试框架&#xff0c;该工具本质上是一个静态污点分析平台&#xff0c;可以用于扫描Android应用程序中的漏洞。 AppShark除了实现行业普遍应用的数据流分析&#xff0c;还将指针分析与数据流分析融合&#xff0c;因而漏…

【项目精选】基于SpringBoot+Vue实现的仿掘金论坛系统(包含完整源码以及部署教程)

项目简介 本论坛基于SpringBootVue框架实现前后端分离&#xff0c;自适应手机端和电脑端&#xff0c;界面简洁美观&#xff0c;功能完善&#xff0c;性能高效。分为用户系统和管理系统两部分。 大厂微服务架构设计&#xff1b;代码简洁、高效无冗余&#xff1b;注释详细易阅读…

LabVIEW 在NI Linux实时设备上访问Shell

LabVIEW 在NI Linux实时设备上访问Shell有一台运行NI Linux实时操作系统的设备&#xff0c;想访问设备上的shell或终端。要使用以下任一方法与设备通信&#xff0c;必须在计算机上安装终端客户端。使用SSH连接&#xff1a;1. 打开电源并将设备连接到网络或直接连接到计算机。2.…

已解决:Linux安装Docker完整过程

① 目的 接口自动化接口需要持续集成&#xff0c;最终选择Jenkins来实现。通过docker来实现安装部署Jenkins ② 环境 Linux ③Docker的自动化安装 Docker官方和国内daocloud都提供了一键安装的脚本&#xff0c;使得Docker的安装更加便捷。 官方的一键安装方式&#xff1a; curl…

C#,索尼偏光相机(Polarization Camera)传感器IMX250和专用SDK简介

以下文字用百度翻译&#xff0c;效果一般&#xff0c;凑合看吧。2018年12月开始上市的索尼偏光相机和偏光相机专用SDK实现了高功能、高画质、高速处理。其要点在于&#xff0c;开发为不在需要专业知识的偏振信号处理的安装中花费工时&#xff0c;能够以最小限度的成本利用的SDK…

逆战成钢!大势智慧2023新春年会暨表彰大典圆满举行

2023年1月14日&#xff0c;大势智慧2023新春年会暨表彰大典如期举行。暂别了疫情的阻隔&#xff0c;大势智慧武汉总部与各分公司成员时隔两年再次迎来“面对面拥抱”。三百多名大势成员群贺新春&#xff0c;共同度过了一次难忘的年会盛典。 逆战成钢 用奋战实现业绩、规模高增…

Flutter 2023 Roadmap 解析

随着 Flutter Forward 大会召开&#xff0c; Flutter 官方在 3.7 版本 之余为我们展示了如 3D 渲染支持、add-to-web 等未来可能出现的 Feature&#xff0c;但是这些都还只是处于开发中&#xff0c;未来可能还会有其他变动&#xff0c;而在大会结束后&#xff0c;官方也公布了更…

【GD32F427开发板试用】基于蓝牙模块的远程点灯演示

本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动&#xff0c;更多开发板试用活动请关注极术社区网站。作者&#xff1a;寒冰1988 一. 前言 感谢极术社区联合兆易创新组织的本次活动&#xff0c;很荣幸能够中签本次的试用机会&#xff0c;结合手里的外围模块&…

代码随想录算法训练营第31天 回溯算法 93.复原IP地址 78.子集 90.子集II

文章目录LeetCode 93.复原IP地址题目讲解思路LeetCode 78.子集题目讲解思路LeetCode 90.子集II题目讲解难点总结LeetCode 93.复原IP地址 题目讲解 思路 递归参数 startIndex一定是需要的&#xff0c;因为不能重复分割&#xff0c;记录下一层递归分割的起始位置。 本题我们还…

ubuntu1804搭建svo2.0环境并跑euroc数据集

0说明 整个SVO2.0环境搭建过程按照官网的说明进行(链接&#xff1a;https://github.com/uzh-rpg/rpg_svo_pro_open) 开发环境是ubuntu18.04ROS-Melodic 1工具安装 Install catkin tools and vcstools if you haven’t done so before. Depending on your operating system …

使用这个插件,fiddler抓包直接生成httprunner脚本

har2case可以将.har文件转化成yaml格式或者json格式的httprunner的脚本文件&#xff0c;生成.har格式文件可以借助 fiddler 或 Charles 抓包工具 友情提示&#xff1a; 录制脚本&#xff0c;只是一个过渡&#xff0c;从0到1的一个过渡&#xff0c;如果让你直接写脚本&#xff…

微信app hook修改剪刀石头布以及骰子思路

0x01 前言 该方法很简单&#xff0c;本次记录是为了加深对安卓hook技术的学习&#xff0c;以及进一步熟悉frida和objection的使用&#xff0c;如果只是想需要这个功能&#xff0c;推荐手机root后装微x模块 技术仅供分享&#xff0c;请勿用于非法用途 0x02 环境准备 首先需要准…

linux下更新tomcat版本

进入tomcat目录下查看当前版本号./version.sh2.切忌升级之前一定要备份老版本mkdir tomcat-backup3.拷贝老版本到你创建的文件夹中cp -rf apache-tomcat-9.0.45-stunew/ tomcat-backup/4.下载tomcat安装包&#xff0c;随便你下载什么版本&#xff0c;我这里以68为例官网&#x…

ssm二手废旧塑料回收交易系统的设计与实现

内容是设计并且实现一个废旧塑料交易系统的设计与实现。它是在Windows下&#xff0c;以MYSQL为数据库开发平台&#xff0c;Tomcat网络信息服务作为应用服务器。废旧塑料交易系统的设计与实现的功能已基本实现&#xff0c;主要包括用户、回收站、加工厂、预约信息、收购信息、交…

ARP协议与ARP地址欺骗防护

ARP协议 什么是MAC地址 MAC地址是固化在网卡上的网络标识&#xff0c;由Ieee802标准规定。 什么是广播 向同一个网段内的设备&#xff0c;发送数据包&#xff0c;广播IP地址是同网段最后一个IP地址。 认识ARP协议 ARP的全称是地址解析协议&#xff0c;我们通过ARP协议获取…

Webpack 运行时代码分析 - 动态加载

文章内容&#xff1a;用 webpack 打包含有动态加载的模块&#xff0c;分析打包后的代码&#xff0c;也就是 webpack 运行时代码。 先思考如下一些问题&#xff1a; 1.什么叫做动态加载 2.如果不使用 webpack 打包&#xff0c;能做到动态加载吗 3.webpack 是如何实现动态加载的…

安装mysql的保姆级教程

安装mysql的保姆级教程&#xff1a; 1.准备的条件 已下载mysql应用软件 my.ini文件&#xff08;见2&#xff09; 2.设置my.ini文件 &#xff08;1&#xff09;my.ini文件内容&#xff1a; [mysqld] # 设置3306端口 port3306 # 设置mysql的安装目录 ----------是你的文件路径…

TCP/IP网络编程——基于 UDP 的服务端/客户端

完整版文章请参考&#xff1a; TCP/IP网络编程完整版文章 文章目录第 6 章 基于 UDP 的服务端/客户端6.1 理解 UDP6.1.1 UDP 套接字的特点6.1.2 UDP 的工作原理6.1.3 UDP 的高效使用6.2 实现基于 UDP 的服务端/客户端6.2.1 UDP 中的服务端和客户端没有连接6.2.2 UDP 服务器和客…

业务流程软件的优点和对企业的好处

我们都知道&#xff0c;CRM客户管理软件可以为企业识别意向客户&#xff0c;带来更多业绩。那么在处理业务的过程中&#xff0c;一套自带业务流程管理的CRM软件是否重要&#xff1f;下面我们来说说企业使用业务流程管理软件的好处&#xff0c;您就清楚问题的答案了。 1、减少错…

【项目精选】基于 Spring Boot + Mybatis Plus + MySQL 的社区居民联系方式管理系统

项目简介 此系统使用 Spring Boot Mybatis Plus Spring Security React Ant Design Pro 架构编写。数据库采用 MySQL&#xff0c;提供强大的、安全的和完整的管理社区居民的信息的功能。 安全性 此系统在系统层面提供了众多的安全特性&#xff0c;产品安全无忧。这些特性…