私有仓库部署在部署节点上

解压此压缩包(压缩包在上篇博文<kubernetes部署中有链接,可下载>)

  1. tar xzf harbor-offline-installer-v1.4.0.tgz

解压后得到一个harbor目录

将此目录移动至/opt目录下

  1. mv harbor /opt

添加一块硬盘50G(如果不添加硬盘,我们添加的镜像都默认保存在系统盘里,随着镜像的增多,就会把第一块硬盘sda1撑爆的,所以要添加新的硬盘)

在/目录下创建date目录

  1. mkdir /date

将刚填加的硬盘挂载到date目录

  1. mount /dev/sdb1 /date

在date里建立harbor目录,目的是为了保存harbor的文件和镜像

  1. mkdir /date/harbor

进入harbor的启动目录

  1. cd /opt/harbor

编辑配置文件harbor.cfg

修改如下:

  1. hostname = reg.yunwei.edu
  2.  
  3. ui_url_protocol = https
  4.  
  5. ssl_cert = /date/harbor/cert/harbor.crt
  6.  
  7. ssl_cert_key = /date/harbor/cert/harbor.key
  8.  
  9. secretkey_path = /date/harbor
  10.  
  11. harbor_admin_password = admin
  1. ssl_cert = /date/harbor/cert/harbor.crt
  2.  
  3. ssl_cert_key = /date/harbor/cert/harbor.key

以上为ca证书名称,必须与实际文件同名

  1. secretkey_path = /date/harbor ca证书目录
  1. vim docker-compose.clair.yml

找到如下参数,并修为如下配置:

  1. 28 /date/harbor/clair-db:/var/lib/postgresql/data:z
  1. vim docker-compose.notary.yml

找到如下参数,并修为如下配置:

  1. 57 /date/harbor/notary-db:/var/lib/mysql:z
  1. vim docker-compose.yml

找到如下参数,并修为如下配置:

  1. /date/harbor/:/var/log/docker/:z
  2.  
  3. 19 /date/harbor/registry:/storage:z
  4.  
  5. 39 /date/harbor/database:/var/lib/mysql:z
  6.  
  7. 58 /date/harbor/config/:/etc/adminserver/config/:z
  8.  
  9. 59 /date/harbor/secretkey:/etc/adminserver/key:z
  10.  
  11. 60 /date/harbor/:/data/:z
  12.  
  13. 80 /date/harbor/secretkey:/etc/ui/key:z
  14.  
  15. 81 /date/harbor/ca_download/:/etc/ui/ca/:z
  16.  
  17. 82 /date/harbor/psc/:/etc/ui/token/:z
  18.  
  19. 101行/date/harbor/job_logs:/var/log/jobs:z
  20.  
  21. 103行/data/harbor/secretkey:/etc/jobservice/key:z

回到kubernetes目录

  1. cd /root/kubernetes

解压此压缩包,ca证书

  1. tar xzf ca.tar.gz

把解压后的目录移动至/date/harbor目录下,并改名为cert

  1. mv ca /date/harbor/cert

安装harbor程序

执行安装脚本,部署harbor

(1)在/opt/harbor/目录下

  1. sh install.sh

(2)验证harbor是否部署成功:

必须在/opt/harbor/目录下执行

  1. docker-compose ps

各节点设置登陆harbor私有镜像仓库

为各节点分发ca证书

(1)在每个节点(包括harbor节点)的/etc/docker/目录下,创建certs.d/reg.yunwei.edu/目录

  1. cd /etc/docker
  2.  
  3. mkdir -p certs.d/reg.yunwei.edu

(2)harbor节点上,将harbor的ca证书中的ca.crt拷贝到/etc/docker目录下

  1. cp /date/harbor/cert/ca.crt /etc/docker/certs.d/reg.yunwei.edu/

(3)将harbor节点的ca.crt文件,分发给各节点的/etc/docker/certs.d/reg.yunwei.edu/下

  1. scp /etc/docker/certs.d master:/etc/docker
  2.  
  3. scp /etc/docker/certs.d node1:/etc/docker
  4.  
  5. scp /etc/docker/certs.d node2:/etc/docker

(4)将以下内容写入所有节点的hosts文件

  1. 部署节点IP reg.yunwei.edu

(5)harbor镜像库验证

命令行:各节点登陆镜像库地址后,输入用户名/密码(admin/admin)后出现 Login Succeeded

  1. docker login reg.yunwei.edu

web浏览器:浏览器输入harbor节点ip

上传镜像到harbor私有镜像仓库

本地镜像重新打tag

(1)例如将如下本地镜像

(2)重新打tag

  1. docker tag itsthenetwork/nfs-server-alpine:latest reg.yunwei.edu/learn/nfs-server-alpine:latest

将重新打tag之后的镜像上传到镜像库

  1. docker push reg.yunwei.edu/learn/nfs-server-alpine:latest

私有镜像库的使用

(1)在harbor镜像库中查看镜像

(2)节点配置好了ca证书的ca.crt后,便可执行如下命令下载镜像。在kubernets集群中节点在启动pod时,会自动下载镜像

  1. docker pull reg.yunwei.edu/learn/nfs-server-alpine:latest

  docker私有仓库它是通过docker-compose这么一个工具做的,它是可以完成同时编排多个容器启动,并且呢这些容器相互关联,帮我们启动一些服务,既然要用到docker-compose这个编排工具,就要有

  一个docker-compose的编排文件,也就是docker-compose.yml,通过这种编排文件,才能给我们启动编排过来的容器,同时启动多个容器,docker-compose这个工具,必须在有docker-compose.yml这个文件的目录下操作。

查看起来的容器

  1. docker-compose ps

比如我想现在删除这个容器,我不能直接docker stop 容器ID,必须先docker-compose stop Name,而后再使用docker rm 容器ID。

启动编排文件

  1.  
  1. docker-compose up d 编排文件名字

harbor私有仓库的更多相关文章

  1. Harbor私有仓库中如何彻底删除镜像释放存储空间?

    简介: Harbor私有仓库运行一段时间后,仓库中存有大量镜像,会占用太多的存储空间.直接通过Harbor界面删除相关镜像,并不会自动删除存储中的文件和镜像.需要停止Harbor服务,执行垃圾回收命令 ...

  2. Docker以http访问Harbor私有仓库(一)

    1 说明 前文Centos7搭建Harbor私有仓库(一)我们成功搭建Harbor,本篇我们主要配置Docker以http方式访问私有仓库 2 Docker配置 2.1 Mac系统 2.1.1 配置D ...

  3. Docker以https访问Harbor私有仓库(二)

    1 说明 前文Centos7搭建Harbor私有仓库(二)中,我们以https方式搭建了Harbor,本篇我们主要配置Docker以https方式访问Harbor私有仓库 2 Docker配置 2.1 ...

  4. Centos7搭建Harbor私有仓库(二)

    1 说明 前文Centos7搭建Harbor私有仓库(一)中成功搭建了Harbor,但,是以http方式搭建的,这里我们修改为https方式 以下基于镜像CentOS-7-x86_64-Minimal ...

  5. 在jenkins中使用shell命令推送当前主机上的docker镜像到远程的Harbor私有仓库

    1.jenkins主机上的docker配置 先在Jenkins主机的docke上配置上Harbor私有仓库地址 cat /etc/docker/daemon.json { "insecure ...

  6. 创建Harbor私有仓库

    前提 1.安装docker服务 参考:https://blog.csdn.net/weixin_36522099/article/details/108861134 老名字:docker.docker ...

  7. Docker Harbor私有仓库部署与管理 (超详细配图)

    Docker Harbor私有仓库部署与管理 1.Harbor 介绍 2.Harbor部署 3.Harbor管理 1.Harbor 介绍: 什么是 Harbor ? Harbor 是 VMware 公 ...

  8. 配置 Containerd 在 harbor 私有仓库拉取镜像

    官方文档地址:https://github.com/containerd/cri/blob/master/docs/registry.md 严格来说,这个具体可分为两部分 1.在k8s中使用Conta ...

  9. 搭建harbor私有仓库

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

随机推荐

  1. Node.js的事件轮询Event Loop原理

    Node.js的事件轮询Event Loop原理解释 事件轮询主要是针对事件队列进行轮询,事件生产者将事件排队放入队列中,队列另外一端有一个线程称为事件消费者会不断查询队列中是否有事件,如果有事件,就 ...

  2. Java语言实现 Base64 加密 & 解密

    Java语言实现 Base64 加密 & 解密 Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法. Base64 ...

  3. Markdown 介绍

    Markdown 是目前互联网上最流行的写作语言,它使用一些简单的符号(* / ` > [] () #)来标记文本格式,其简洁的语法.优美的格式以及强大的软件支持深受广大网友的喜爱.维基百科上对 ...

  4. Android adb.exe 开发模试安装

    1.安装 adb . 让它直接能在cmd 窗口运行 下载:platform-tools  这个就行: Download SDK Platform-Tools for Windows 下载完成后直接解压 ...

  5. 【JVM学习笔记】打破双亲委托机制的例子

    Tomcat也有自己的类加载器,比如Servlet,这些类加载器就改变了双亲委托模型的默认机制 (该主题有待深入)

  6. Android开发 移动端适配

    1 UI自适应(UGUI) UI自适应又分为锚点自适应和缩放.锚点主要控制UI控件在父控件之中的位置,同时也能影响缩放. 锚点自适应缩放: 我们使用UGUI创建一个界面,设计使用1920x1080分辨 ...

  7. Processor 介绍

    1.概述 Sink Group允许用户将多个Sink组合成一个实体. Flume Sink Processor 可以通过切换组内Sink用来实现负载均衡的效果,或在一个Sink故障时切换到另一个Sin ...

  8. sqlalchemy映射数据库

    from sqlalchemy import create_engine,Column,Integer,String from sqlalchemy.ext.declarative import de ...

  9. BUUOJ reverse SimpleRev (爆破)

    SimpleRev SimpleRev(flag需加上flag{}再提交) 注意:得到的 flag 请包上 flag{} 提交 拖到ida 找到关键函数: unsigned __int64 Decry ...

  10. 用ufile和S3代替hdfs存储数据

    一,添加ufile需在配置中添加: core-site.xml添加如下配置:<property><name>fs.ufile.impl</name><valu ...