• harbor私有仓库


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

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

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

    解压后得到一个harbor目录

     

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

    mv harbor /opt

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

    在/目录下创建date目录

    mkdir /date

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

    mount /dev/sdb1 /date

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

    mkdir /date/harbor

    进入harbor的启动目录

    cd /opt/harbor

    编辑配置文件harbor.cfg

    修改如下:

    hostname = reg.yunwei.edu
    
    ui_url_protocol = https
    
    ssl_cert = /date/harbor/cert/harbor.crt            
    
    ssl_cert_key = /date/harbor/cert/harbor.key
    
    secretkey_path = /date/harbor
    
    harbor_admin_password = admin
    ssl_cert = /date/harbor/cert/harbor.crt
    
    ssl_cert_key = /date/harbor/cert/harbor.key

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

     

    secretkey_path = /date/harbor 为ca证书目录

     

    vim docker-compose.clair.yml

     

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

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

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

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

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

    8 行 /date/harbor/:/var/log/docker/:z
    
    19行 /date/harbor/registry:/storage:z
    
    39行 /date/harbor/database:/var/lib/mysql:z
    
    58行 /date/harbor/config/:/etc/adminserver/config/:z
    
    59行 /date/harbor/secretkey:/etc/adminserver/key:z
    
    60行 /date/harbor/:/data/:z
    
    80行 /date/harbor/secretkey:/etc/ui/key:z
    
    81行 /date/harbor/ca_download/:/etc/ui/ca/:z
    
    82行 /date/harbor/psc/:/etc/ui/token/:z
    
    101行/date/harbor/job_logs:/var/log/jobs:z
    
    103行/data/harbor/secretkey:/etc/jobservice/key:z

    回到kubernetes目录

    cd /root/kubernetes

    解压此压缩包,ca证书

    tar xzf ca.tar.gz

     

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

    mv ca /date/harbor/cert

    安装harbor程序

    执行安装脚本,部署harbor

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

    sh install.sh

     

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

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

    docker-compose ps

     

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

    为各节点分发ca证书

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

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

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

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

     

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

    scp /etc/docker/certs.d master:/etc/docker 
    
    scp /etc/docker/certs.d node1:/etc/docker 
    
    scp /etc/docker/certs.d node2:/etc/docker 

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

    部署节点IP reg.yunwei.edu

    (5)harbor镜像库验证

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

    docker login reg.yunwei.edu

     

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

     

     

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

    本地镜像重新打tag

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

     

    (2)重新打tag

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

     

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

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

     

    私有镜像库的使用

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

     

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

    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这个文件的目录下操作。

    查看起来的容器

    docker-compose ps

     

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

    启动编排文件

    
    
    docker-compose up –d 编排文件名字
  • 相关阅读:
    MySQL索引优化入门
    优雅实现订单关闭及定时器的使用
    web.xml详解
    多个Tomcat之间实现Session共享
    tomcat8.0 基本参数调优配置
    tomcat部署会碰到的问题
    Centos7以上的版本 mysql 无法启动,无法停止问题
    tomcat 重启报错unregister mbean error javax.management.InstanceNotFoundException
    日线做多,15min做空的情况收集
    葛兰碧均线法则
  • 原文地址:https://www.cnblogs.com/shuaiyin/p/11066433.html
Copyright © 2020-2023  润新知