docker私有仓库-harbor的搭建

docker 官方提供的私有仓库 registry,用起来虽然简单 ,但在管理的功能上存在不足。 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,harbor使用的是官方的docker registry(v2命名是distribution)服务去完成。harbor在docker distribution的基础上增加了一些安全、访问控制、管理的功能以满足企业对于镜像仓库的需求。

安装Harbor

  1. 安装harbor之前需要安装docker  
  2. 由于 Harbor 是基于 Docker Registry V2 版本,所以 docker 版本必须 >=1.10.0 docker-compose >=1.6.0
  3. 下载最新版 Docker Compose   wget -c https://github.com/docker/compose/releases/download/v2.24.6/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
  4. 对二进制文件应用可执行权限: chmod +x /usr/local/bin/docker-compose
  5. 测试是否安装成功 docker-compose --version

安装Harbor安装包

wget -c https://github.com/goharbor/harbor/releases/download/v2.0.2/harbor-offline-installer-v2.8.4.tgz

解压:wget -c https://github.com/goharbor/harbor/releases/download/v2.0.2/harbor-offline-installer-v2.8.4.tgz

cd /usr/local/harbor/

cp harbor.yml.tmpl harbor.yml

vim harbor.yml

修改3个地方:hostname,密码,注释掉https(没有配置证书启动会报错)

运行安装脚本

# 运行安装脚本 # ./install.sh

Harbor上传镜像

新建项目

新建用户,并设置为openlab的维护人员

从另一台主机上传镜像

修改配置文件,并登陆

[root@node1 ~]# cat /etc/docker/daemon.json 
{"registry-mirrors": ["https://registry.docker-cn.com","http://hub-mirror.c.163.com"],"live-restore": true, "insecure-registries":["192.168.37.21:5000"],"insecure-registries":["reg.openlab.cn"]}[root@node1 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.37.31 reg.openlab.cn[root@node1 ~]# systemctl daemon-reload 
[root@node1 ~]# systemctl restart docker[root@node1 ~]# docker login reg.openlab.cn
Username: tom
Password: 
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-storeLogin Succeeded

将要上传的镜像tag,并push

[root@node1 ~]# docker tag busybox:latest reg.openlab.cn/openlab/busybox:v1
[root@node1 ~]# docker push reg.openlab.cn/openlab/busybox:v1

Harbor下载镜像

从另一台主机下载,修改另一台主机的配置文件

[root@node2 ~]# cat /etc/docker/daemon.json
{"insecure-registries":["192.168.37.21:5000"],"insecure-registries":["reg.openlab.cn"]}[root@node2 ~]# systemctl daemon-reload 
[root@node2 ~]# systemctl restart docker.service [root@node2 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.37.31 reg.openlab.cn
[root@node2 ~]# docker pull reg.openlab.cn/openlab/busybox:v1
Error response from daemon: unauthorized: unauthorized to access repository: openlab/busybox, action: pull: unauthorized to access repository: openlab/busybox, action: pull

由于是私有仓库,直接下载是没有权限的,必须登陆

[root@node2 ~]# docker login reg.openlab.cn
Username: tom
Password: 
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-storeLogin Succeeded
[root@node2 ~]# docker pull reg.openlab.cn/openlab/busybox:v1
v1: Pulling from openlab/busybox
3a2e9cc4b126: Pull complete 
Digest: sha256:db16cd196b8a37ba5f08414e6f6e71003d76665a5eac160cb75ad3759d8b3e29
Status: Downloaded newer image for reg.openlab.cn/openlab/busybox:v1[root@node2 ~]# docker images
REPOSITORY                       TAG                 IMAGE ID            CREATED             SIZE
ubuntu                           latest              ca2b0f26964c        11 days ago         77.9MB
ubuntu                           18.04               f9a80a55f492        9 months ago        63.2MB
reg.openlab.cn/openlab/busybox   v1                  ba5dc23f65d4        9 months ago        4.26MB

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

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

相关文章

解决Ubuntu 16.04/18.04 图形化界面异常、鼠标光标消失、鼠标变成叉叉等问题

bug场景: 一切从一次换源说起…叭叭叭 这篇文章解决的问题: 1.换源,默认源太慢,换成可用的阿里云的源 2.apt-get failed to …问题 3.图形化异常问题 4.get unmet dependence 问题 5. 鼠标光标消失和鼠标变成叉叉问题。 解决方…

DevOps方案中10款最佳开源监控工具

DevOps方案中10款最佳开源监控工具 2024年,监视对现代DevOps团队的工作至关重要。DevOps团队需要可靠且灵活的工具,以有效监视和管理复杂系统,这些系统可以提供有关系统性能、可用性和安全性的实时见解。 开源监控工具由于其成本效益、灵活性和社区支持而日益受到青睐。 …

【性能测试】移动测试md知识总结第1篇:移动端测试课程介绍【附代码文档】

移动测试完整教程(附代码资料)主要内容讲述:移动端测试课程介绍,移动端测试知识概览,移动端测试环境搭建,ADB常用命令学习主要内容,学习目标,学习目标,1. window安装andorid模拟器,学习目标。主流移动端自动…

php.exe运行时,提示缺少VCRUNTIME140.dll

php.exe运行时,提示缺少VCRUNTIME140.dll 下载地址 https://www.microsoft.com/zh-cn/download/details.aspx?id48145根据需要选择下载3.运行安装后,再次运行php.exe。

MySQL用法---MySQL Workbench创建数据库和表

1. 连接数据库 打开软件,点击左下角卡片,输入设置的数据库密码,勾选单选框 2. 了解主页面的组成部分 3. 创建数据库 先点击工具栏的创建按钮 再输入数据库名称 点击 Apply 创建 4. 创建数据表 展开数据库,在Tables上右键&…

全自动守护数据安全:全自动备份文件的重要性与高效方案

一、全自动备份文件:数据安全的坚实防线 在数字化时代,电脑成为我们生活和工作中不可或缺的重要工具。然而,随着电脑中存储的数据量不断增长,数据丢失或损坏的风险也随之上升。因此,全自动备份文件的重要性愈发凸显&a…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的常见车型识别系统(Python+PySide6界面+训练代码)

摘要:本文深入探讨了如何应用深度学习技术开发一个先进的常见车型识别系统。该系统核心采用最新的YOLOv8算法,并与早期的YOLOv7、YOLOv6、YOLOv5等版本进行性能比较,主要评估指标包括mAP和F1 Score等。详细解析了YOLOv8的工作机制&#xff0c…

第三百九十二回

文章目录 1. 概念介绍2. 方法与细节2.1 实现方法2.2 具体细节 3. 示例代码4. 内容总结 我们在上一章回中介绍了"如何混合选择多个图片和视频文件"相关的内容,本章回中将介绍如何通过相机获取图片文件.闲话休提,让我们一起Talk Flutter吧。 1. …

【算法设计】实验五分支限界法(附源代码)

这里写目录标题 一、上机目的二、上机内容与要求三、上机步骤四、上机结果1、将课本6.2节单源最短路径算法改为程序,并进行测试和验证2、将课本6.3节装载问题改为程序,并进行测试和验证。 一、上机目的 1、通过分支限界法的示例程序进一步理解分支限界法…

SAP 消息号AA377

客户在做资产报废的时候,出现以下报错 解决办法:OAAQ “历史数据传输状态”变成“已完成”就OK

揭秘数据之美:利用 Bokeh 轻松构建实时、动态的数据可视化项目

1、引言 想让你的数据跃然 “屏” 上?厌倦了静态图表的平淡无奇?那么,今天就让我们一起探索 Python 世界中的瑰宝 ——Bokeh 库。这款强大的可视化工具以其流畅的交互性和实时更新能力,让你的数据呈现如电影般生动立体&#xff0…

【记录 | 基础动态规划】:数字三角形

数字三角形 链接:[USACO1.5] [IOI1994]数字三角形 Number Triangles 题目描述 观察下面的数字金字塔。 写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大。每一步可以走到左下方的点也可以到达右下方的点。 在上面的样例中,从 7 → 3 → 8 → 7 →…