docker学习笔记(五):harbor仓库搭建与简单应用

harbor私有仓库

简介

Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署私有环境内的Registry也是非常必要的。Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能

搭建私有仓库的软件

  1. harbor
  2. nexus
  3. docker register,官方提供的

下面我将介绍搭建harbor私有仓库以及进行简单的应用

搭建harbor私有仓库

1.官网下载harbor,docker-compose命令行插件,上传到linux

Releases · goharbor/harbor (github.com)

[root@docker ~]# mkdir /myharbor
[root@docker ~]# cd /myharbor/
[root@docker myharbor]# ls
[root@docker myharbor]# ls
docker-compose  harbor-offline-installer-v2.5.3.tgz

 2.将docker-compose命令行插件赋予可执行权限并加入环境变量,解压harbor软件包

[root@docker myharbor]# chmod +x docker-compose 
[root@docker myharbor]# ls
docker-compose  harbor-offline-installer-v2.5.3.tgz
[root@docker myharbor]# mv docker-compose /usr/bin/
[root@docker myharbor]# tar xf harbor-offline-installer-v2.5.3.tgz 

 3.进入解压后的harbor文件夹,修改harbor.yml.tmpl为harbor.yml

[root@docker myharbor]# cd harbor
[root@docker harbor]# ls
common.sh  harbor.v2.5.3.tar.gz  harbor.yml.tmpl  install.sh  LICENSE  prepare
[root@docker harbor]# mv harbor.yml.tmpl harbor.yml

 4.修改harbor.yml配置文件

[root@docker harbor]# vim harbor.yml hostname: 192.168.31.129# http related config
http:# port for http, default is 80. If https enabled, this port will redirect to https portport: 8089

 

 5.安装

 

[root@docker harbor]# ./install.sh

 

6.网页访问 

 

 7.登录harbor

默认账号admin

密码Harbor12345

 8.新建项目,新建用户并设置为管理员

 

 9.本机上传镜像到harbor私有仓库myrepo

准备上传本机的nginx:latest这个镜像

修改/etc/docker/daemon.json文件,重启docker服务
[root@docker harbor]# vim /etc/docker/daemon.json {"registry-mirrors": ["https://52152375.mirror.aliyuncs.com"],"insecure-registries":["192.168.31.129:8089"]
}
[root@docker harbor]# systemctl daemon-reload
[root@docker harbor]# systemctl restart docker

 

登录harbor 

[root@docker harbor]# docker login 192.168.31.129:8089
Username: felix
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

 用户和密码是当时在harbor网页上新建的用户和密码

 标记镜像

[root@docker harbor]# docker tag nginx:latest 192.168.31.129:8089/myrepo/nginx:latest

上传镜像到myrepo私有仓库

[root@docker harbor]# docker push 192.168.31.129:8089/myrepo/nginx

网页查看镜像

 发现了上传的镜像!

10.本机拉取harbor私有仓库的镜像
删除原来的nginx:latest镜像
[root@docker harbor]# docker rmi nginx:latest

从私有仓库拉取之前上传的nginx:latest镜像 

[root@docker harbor]# docker pull 192.168.31.129:8089/myrepo/nginx

查看镜像  

[root@docker harbor]# docker images

测试成功!

出现的问题
docker login登陆不上harbor

  1. 账号密码可能输入错误
  2. 建议关闭selinux、firewalld
  3. 修改/etc/docker/daemon.json,加入 “insecure-registries”:[“192.168.31.129:8089”]–你自己搭建的私有仓库,然后记得刷新daemon和docker服务
  4. 可以尝试重启以下harbor

harbor通过./install安装失败

注释掉harbor.yml配置文件里的https功能,不启用

 

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

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

相关文章

组件目录存放问题

目录 一、思考引入 二、组件分类 三、组件分类的目的 一、思考引入 .vue文件本质无区别,而路由相关的组件,为什么要放在views目录呢? 二、组件分类 .vue文件分2类:页面组件和复用组件。注意:都是.vue文件&#xff…

【八股系列】React中props和state的区别是什么?

React中props和state的区别是: props是用来从父组件向子组件进行传递数据的,在子组件中可以用props来接收到父组件传递过来的参数。props是不可变的,用户不能在子组件中修改props的值,因为从父组件中传递过来的值被认为是不可变数…

HJ19 简单错误记录

问题概要 开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。 对应牛客网题目HJ19 简单错误记录 思路分析 其实这个题目并没有用到特别复杂的技巧,重点是对字符串的处理,以及模拟整个记录的过程。 代码实现 #include…

漫画对话 ai翻译

復讐の教科書ーー81 81-1 いい加減吐け!!冴木!! 快说吧!!冴木!! お前が一連の事件の犯人なんだろ!? 你就是连续事件的犯人吧!? だか…

400G QSFP-DD光模块的分类及应用领域

400G QSFP-DD光模块是一种光通信设备,具有高带宽和高密度的特点,适用于各种数据中心和通信网络。本文将介绍400G QSFP-DD光模块的分类和应用领域。 400G QSFP-DD光模块的分类 400G QSFP-DD光模块可以根据其传输速率、光纤类型和工作距离等因素进行分类。…

SpringBoot的启动器——Spring-boot-starter介绍和常见启动器

1、Starter是什么 Spring Boot通过将我们常用的功能场景抽取出来,做成的一系列的启动器,我们只需要在项目中引入这些starter,相关的所有依赖就会全部被导入进来,并且我们可以抛弃繁杂的配置,例如: ​ spri…

探索Java的未来:创新与演进的旅程

探索Java的未来:创新与演进的旅程 Java,这个被誉为“一次编写,到处运行”的编程语言,自1995年诞生以来,一直以其跨平台性、面向对象和强大的安全性而著称。随着技术的不断进步和市场的不断变化,Java也在不…

游戏工作室如何利用惯性动作捕捉技术制作动画?

随着动捕设备不断进步和游戏行业的发展,惯性动作捕捉技术在游戏开发领域逐渐普及。惯性动作捕捉技术,可以精准捕捉现实世界中的真人动作,并将其精准应用于虚拟角色上,使游戏中的角色动作可以呈现出更写实、逼真和沉浸感&#xff0…

##10 卷积神经网络(CNN):深度学习的视觉之眼

文章目录 前言1. CNN的诞生与发展2. CNN的核心概念3. 在PyTorch中构建CNN4. CNN的训练过程5. 应用:使用CNN进行图像分类5. 应用:使用CNN进行时序数据预测代码实例7. 总结与展望前言 在深度学习的领域中,卷积神经网络(CNN)已经成为视觉识别任务的核心技术。自从AlexNet在2…

光伏设备制造5G智能工厂数字孪生可视化平台,推进行业数字化转型

光伏设备制造5G智能工厂数字孪生可视化平台,推进行业数字化转型。光伏设备制造5G智能工厂数字孪生可视化平台是光伏行业数字化转型的重要一环。通过数字孪生平台,光伏设备制造企业可以实现对生产过程的全面监控和智能管理,提高生产效率&#…

ESP32-C3模组上跑通MQTT(4)

接前一篇文章:ESP32-C3模组上跑通MQTT(3) 本文内容参考: 《ESP32-C3 物联网工程开发实战》 特此致谢! 上一回讲到了MQTT的消息格式,讲解了MQTT控制报文中的固定头中的控制报文的类型、消息质量等级和标志…

基于51单片机的智能导盲手杖—超声波测距

基于51单片机的智能导盲手杖 (仿真+程序原理图+PCB设计报告) 功能介绍 具体功能: 1.显示前方障碍物距离。 2.实时测量距离,并通过蜂鸣器提醒距离过短,蜂鸣器蜂鸣发出预警。 3.可以通过按键调…

吴恩达机器学习笔记:第 9 周-17大规模机器学习(Large Scale Machine Learning)17.1-17.2

目录 第 9 周 17、 大规模机器学习(Large Scale Machine Learning)17.1 大型数据集的学习17.2 随机梯度下降法 第 9 周 17、 大规模机器学习(Large Scale Machine Learning) 17.1 大型数据集的学习 如果我们有一个低方差的模型,增加数据集的规模可以帮助你获得更好…

ubantu安装rabbbitmq

ubantu安装rabbbitmq 安装Erlang1、在linux下直接安装2、上传Erlang文件后解压 安装rabbitmq开启web管理接口创建用户及修改guest密码,删除guest默认账号 安装Erlang 1、在linux下直接安装 #运行以下命令直接安装: sudo apt-get install erlang#可运行…

【代码随想录】回溯问题之组合

前言 更详细的在大佬的代码随想录 (programmercarl.com) 本系列仅是简洁版笔记,为了之后方便观看 解决的类型问题 组合无序,排列有序 组合切割子集排列(强调元素的顺序)棋牌问题(n皇后,数独&#xff0…

postgres 查看全部数据库

在 PostgreSQL 中,要查看所有的数据库,你可以使用 psql 命令行工具并执行一个特定的命令。以下是查看所有数据库的步骤: 打开终端: 首先,打开你的终端或命令行界面。 连接到 PostgreSQL: 使用 psql 连接到…

jsbsim 调 pid 记录

1.先调俯仰角 pitch 俯仰角不能超过 xml 文件里定义的爬升角 高度不对,调 pitch 角的 pid,俯仰角 理论上调pid: 响应快了,P调小;响应慢了,P调大 I消除稳态误差,I调大 D防止震荡,震…

AWS Lambda 第一个例子Hello (JAVA)

什么是Serverless(无服务器计算) 行业通常所说的Serverless,主要是指“无服务器计算(Serverless Computing)”。无服务器计算,并不是真的不需要服务器,而是说,对于用户,…

Hadoop3:HDFS的Shell操作(常用命令汇总)

一、简介 什么是HDFS的Shell操作? 很简单,就是在Linux的终端,通过命令来操作HDFS。 如果,你们学习过git、docker、k8s,应该会发现,这些命令的特点和shell命令非常相似 二、常用命令 1、准备工作相关命令…

全球科技早参丨皮查伊:智能手机将是AI创新的核心平台、科学家研制出超纯硅 | 最新快讯

每经记者:文巧 每经编辑:兰素英 |2024年5月10日 星期五| NO.1 Neuralink首例人类脑机接口手术后设备出现问题 Neuralink最新宣布,在今年1月实施首例人类手术后,植入受试病患的设备遭遇了一系列机械故障。…