一、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. css颜色单位

    /* 用颜色的单词表示不同的颜色:red, green, blue等等 */ p { background-color: red; } /* 用rgb三元色表示,rgb => red, gree ...

  2. JS中有趣的知识

    1.分号与换行 function fn1(){ return { name: 'javascript' }; } function fn2(){ return { name: 'javascript' ...

  3. 使用Surface View来显示图片

    public class YUVImageView extends SurfaceView { private static final String TAG = "YUVImageView ...

  4. jvm加载包名和类名相同的类的规则,以及如何加载包名和类名相同的类(转)

    jvm包括三种类加载器: 第一种:bootstrap classloader:加载java的核心类. 第二种:extension classloader:负责加载jre的扩展目录中的jar包. 第三种 ...

  5. 【机器学习实验】scikit-learn的主要模块和基本使用

    [机器学习实验]scikit-learn的主要模块和基本使用 引言 对于一些开始搞机器学习算法有害怕下手的小朋友,该如何快速入门,这让人挺挣扎的.在从事数据科学的人中,最常用的工具就是R和Python ...

  6. SpringMvc返回给前端数据@ResponseBody响应体【支持Ajax】

    1).在Controller中写 //@ResponseBody响应体是jackson包提供的 用于将Controller的方法返回的对象,通过HttpMessageConverter接口转换为指定格 ...

  7. C#语言是专门为.NET提供的开发语言(visual studio 2008序列号)

    .net是微软的一个平台在这个平台上的语言有C#.C++.VB等,其中C#是专门为.NET平台开发的语言,语法简洁美观.建议安装visual studio 2008,你可以去微软官方下载90天试用版, ...

  8. SQL中循环的实现方式

    一.第一种方法,游标 定义游标 DECLARE cur_ClubHeadCash CURSOR FAST_FORWARD READ_ONLY FOR,循环每行 FETCH NEXT FROM cur_ ...

  9. [CSP-S模拟测试]:抽卡(概率DP)

    题目描述 水上由岐最近在肝手游,游戏里有一个氪金抽卡的活动.有$n$种卡,每种卡有 3 种颜色.每次抽卡可能什么也抽不到,也可能抽到一张卡.每氪金一次可以连抽 m 次卡,其中前$m−1$次抽到第$i$ ...

  10. 【Java架构:基础技术】一篇文章搞掂:Maven

    本文篇幅较长,建议合理利用右上角目录进行查看(如果没有目录请刷新). 本文基于<Maven 实战>一书进行总结和扩展,大家也可以自行研读此书. 一.Maven简介 1.1.什么是Maven ...