一、Harbor 安装(尚硅谷资料)

安装:Harbor 官方地址:官方地址:https://github.com/vmware/harbor/releases

1、解压软件包

tar xvf harbor-offline-installer-<version>.tgz https://github.com/vmware/harbor/releases/download/v1.2.0/harbor-offline-installer-v1.2.0.tgz

2、配置harbor.cfga

必选参数

  • hostname:目标的主机名或者完全限定域名:目标的主机名或者完全限定域名
  • ui_url_protocol::http或或https。默认为。默认为http
  • db_password:用于db_auth的的MySQL数据库的根密码。更改此密码进行任何生产用途数据库的根密码。更改此密码进行任何生产用途
  • max_job_workers:(默认值为:(默认值为3)作业服务中的复制工作人员的最大数量。对于每个映像复制作业,)作业服务中的复制工作人员的最大数量。对于每个映像复制作业,工作人员将存储库的所有标签同步到远程目标。增加此数字允许系统中更多的并发复制作业。但是,由于每个工工作人员将存储库的所有标签同步到远程目标。增加此数字允许系统中更多的并发复制作业。但是,由于每个工作人员都会消耗一定数量的网络作人员都会消耗一定数量的网络/ CPU / IO资源,请根据主机的硬件资源,仔细选择该属性的值资源,请根据主机的硬件资源,仔细选择该属性的值
  • customize_crt:(:(on或或off。默认为。默认为on)当此属性打开时,)当此属性打开时,prepare脚本将为注册表的令牌的生成脚本将为注册表的令牌的生成/验证创验证创建私钥和根证书建私钥和根证书
  • ssl_cert::SSL证书的路径,仅当协议设置为证书的路径,仅当协议设置为https时才应用时才应用
  • ssl_cert_key:SSL密钥的路径,仅当协议设置为密钥的路径,仅当协议设置为https时才应用时才应用
  • secretkey_path:用于在复制策略中加密或解密远程注册表的密码的密钥路径:用于在复制策略中加密或解密远程注册表的密码的密钥路径

3、创建 https 证书以及配置相关目录权限

openssl genrsa -des3 -out server.key
openssl req -new -key server.key -out server.csr
cp server.key server.key.org
ope nssl rsa -in server.key.org -out server.key
ope nssl x509 -req -days -in server.csr -signkey server.key -out server.crt
mkdir /data/cert
chmod -R /data/cert

4、运行脚本进行安装

./install.sh

5、访问测试

https://reg.yourdomain.com 的管理员门户(将的管理员门户(将reg.yourdomain.com更改为您的主机名更改为您的主机名harbor.cfg)

请注意,默认管理员用户名认管理员用户名/密码为密码为admin / Harbor12345

6、上传镜像进行上传测试、上传镜像进行上传测试

a、指定镜像仓库地址、指定镜像仓库地址

vim /etc/docker/daemon.json

{

"insecure-registries": ["serverip"]

}

b、下载测试镜像

docker pull hello-world

c、给镜像重新打标签

docker tag hello-world serverip/hello-world:latest

d、登录进行上传

docker login serverip

7、其它 Docker 客户端下载测试

a、指定镜像仓库地址(serverip指自身设置的地址,如我的:hub.lqz.com)

vim /etc/docker/daemon.json

{

"insecure-registries": ["serverip"]

}

b、下载测试镜像

docker pull serverip/hello-world:latest

二、自身安装过程

1、编辑daemon.json文件

vim  /etc/docker/daemon.json

添加字符串:"insecure-registries":["https://hub.lqz.com"]

开启docker:

systemctl restart docker

2、创建harbor文件夹,将docker.compose放入并授权

3、创建证书

vim harbor.cfg

创建证书

① 生成私钥:  openssl genrsa -des3 -out server.key 2048

密码:root123

② 创建证书的请求csr:

  openssl req -new -key server.key -out server.csr

③ 备份私钥

cp server.key server.key.org

④ 转换成自己的证书(退出密码)

openssl rsa -in server.key.org -out server.key

⑤ 拿证书请求去签名

openssl x509 -req -days  -in server.csr -signkey server.key -out server.crt

echo "192.168.100.168 hub.lqz.com" >> /etc/hosts

⑥ 在计算机里修改hosts文件

C:\Windows\System32\drivers\etc  hosts文件

用管理员权限向文件添加    192.168.100.168 hub.lqz.com

⑦ 用浏览器访问  hub.lqz.com

默认账号:admin;密码:Harbor12345

可在vim harbor.cfg 文件中查看

三、使用镜像仓库harbor上传下载自定义镜像

1、重新启动harbor

cd  /usr/local/harbor/

./install.sh

2、通过外网,使用docker pull 命令下载一个外部服务器中的镜像文件用与测试

docker pull nginx

3、登录harbor镜像仓库服务器

docker login hub.lqz.com

其中hub.lqz.com为自己企业镜像仓库的域名

4、查看镜像docker images

5、对下载的镜像打标签,用于后面的上传操作

docker tag docker.io/nginx:latest hub.lqz.com/library/nginx:latest

6、上传至镜像仓库,其中library为镜像仓库中默认的项目名称,如需要上传到其他项目文件中,请自行修改为对应的项目文件名

docker push hub.lqz.com/library/nginx:latest

7、登录harbor镜像仓库的UI界面,查看上传的镜像

8、使用镜像仓库下载镜像文件,命令为:

docker pull hub.lqz.com/library/nginx:latest

9、删除镜像

docker rmi -f hub.lqz.com/library/nginx:latest

参照链接:https://jingyan.baidu.com/article/4b52d702e62167fc5c774b3b.html

四、遇到问题:

1、ssh登录错误ECDSA host key for ip has changed解决方案

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

@       WARNING: POSSIBLE DNS SPOOFING DETECTED!          @

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

The ECDSA host key for k8s-node01 has changed,

and the key for the corresponding IP address 192.168.100.85

is unknown. This could either mean that

DNS SPOOFING is happening or the IP address for the host

and its host key have changed at the same time.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!

Someone could be eavesdropping on you right now (man-in-the-middle attack)!

It is also possible that a host key has just been changed.

The fingerprint for the ECDSA key sent by the remote host is

SHA256:HJ7t/uY0mjFJng9mYzqw7LBxVDQftfHgBJsAlGBOPjM.

Please contact your system administrator.

Add correct host key in /root/.ssh/known_hosts to get rid of this message.

Offending ECDSA key in /root/.ssh/known_hosts:1

ECDSA host key for k8s-node01 has changed and you have requested strict checking.

Host key verification failed.

lost connection

问题产生原因:

设置node节点为同一台主机(系统重装)IP地址不一样,master连接时再次访问此ip服务器时,因为ssh会自动匹配之前ssh保存的信息,由于我们的服务器做了更改,会导致本地保存的ssh信息失效,于是再次连接时就会出现上述错误。

解决方案:

删除本地known_hosts里面的缓存信息即可。命令:ssh-keygen -R "你的远程服务器ip地址"

注意:R是大写!

链接:https://blog.csdn.net/yunweifun/article/details/78763026

2、出现端口不能连接问题

ssh: connect to host k8s-node01 port 22: No route to host

lost connection

vim修改/etc/hosts下对应的IP地址就恢复了

这篇随笔有很多重复的东西,但我没选择删除,因为我觉得知识就是一个不短重复积累的过程,加油啦!

链接:https://www.bilibili.com/video/av66617940/?p=14

第五章 配置私有仓库Harbor的更多相关文章

  1. 菜鸟系列docker——搭建私有仓库harbor(6)

    docker 搭建私有仓库harbor 1. 准备条件 安装docker sudo yum update sudo yum install -y yum-utils device-mapper-per ...

  2. Kubernetes-5:搭建企业级私有仓库Harbor

    搭建企业级私有仓库Harbor 安装需求 python版本 >= 2.7 Docker引擎版本 >= 1.10 docker-compose版本 >= 1.6.0 安装环境 一.Py ...

  3. Kubernets二进制安装(5)之私有仓库harbor搭建

    在IP地址为192.168.80.50,机器名为mfyxw50上搭建私有仓库harbor harbor下载地址: harbor下载连接地址:https://github.com/goharbor/ha ...

  4. 微服务探索之路03篇-docker私有仓库Harbor搭建+Kubernetes(k8s)部署私有仓库的镜像

    ❝ 目录: 微服务探索之路01篇.net6.0项目本地win10系统docker到服务器liunx系统docker的贯通 微服务探索之路02篇liunx ubuntu服务器部署k8s(kubernet ...

  5. 物联网架构成长之路(44)-Docker私有仓库Harbor

    0. 前言 安装docker.docker-compose,这些在我以前的博客讲过,这里就不继续说明了,有需要的可以参考我之前的博客. https://www.cnblogs.com/wunaozai ...

  6. docker私有仓库-harbor

    简单说一下Harbor的部署,踩了几个坑,参考同事大神的配置文件,一脸懵逼的部署出来了,其中部分内容参考了网上一些大神的文档,本篇文章仅供参考学习,如有雷同,万分荣幸. 这篇文档仅限于centos7参 ...

  7. 企业级Docker私有仓库Harbor

    一.Harbor简介 1.Harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Docke ...

  8. 配置私有仓库(使用registry镜像搭建一个私有仓库)

    在使用Docker一段时间后,往往会发现手头积累了大量的自定义镜像文件,这些文件通过公有仓库进行管理并不方便:另外有时候只是希望在内部用户之间进行分享,不希望暴露出去.这种情况下,就有必要搭建一个本地 ...

  9. docker 私有仓库 harbor docker-compose

    c创建docker私有仓库 docker pull registry:2.1.1 mkdir /opt/registry#mkdir /var/lib/registry docker run -d - ...

随机推荐

  1. [转]图片压缩功能在JBoss AS7出错有关问题

    图片压缩功能在JBoss AS7出错问题近日在为平台(http://www.zyiqibook.com)做些小的整改,途中基本很顺利,但就在后面出现了些纠结的问题,而这问题我之前遇到过,因为一时没有想 ...

  2. Java8 新增BASE64加解密API

    什么是Base64编码? Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法 基于64个字符A-Z,a-z,0-9,+,/ ...

  3. 前端学习(二十六)移动端s(笔记)

    ===================================================弹性布局rem布局---------------------------------------- ...

  4. 如何在YouTube上下载视频

    1,首先要有科学上网的工具 2,详细说明:https://en.savefrom.net/1-how-to-download-youtube-video/

  5. jQuery实现网页放大镜功能 转载

    京东等电商网站中可以对商品进行放大观察,本文要实现的就是模仿这个放大镜功能,大致效果如下图所示: 简要说明实现思路: 1.原图窗口与放大窗口插入的是同一个图片,不过原图窗口的图片要适当缩小,放大窗口图 ...

  6. get和post 两种基本请求方式的区别

    GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...

  7. linux(一)vi和vim

    vi 多模式文本编辑器 多模式产生的原因 四种模式 正常模式 插入模式 命令模式 可视模式 vi man vi vim vim正常模式 直接vim回车,或vim空格文件名回车 i进入插入模式 I(sh ...

  8. java中循环删除list中元素的方法

    重点哈 印象中循环删除list中的元素使用for循环的方式是有问题的,但是可以使用增强的for循环,然后今天在使用时发现报错了,然后去科普了一下,再然后发现这是一个误区.下面就来讲一讲..伸手党可直接 ...

  9. c#如何写服务,打包和卸载服务

    Service.cs  每隔一分钟进行一次数据操作 public Service1()        {            InitializeComponent();            Sy ...

  10. 理解同步/异步/阻塞/非阻塞IO区别

    5种IO模型 1.阻塞式I/O模型 阻塞I/O(blocking I/O)模型,进程调用recvfrom,其系统调用直到数据报到达且被拷贝到应用进程的缓冲区中或者发生错误才返回.进程从调用recvfr ...