美文网首页javaWeb学习云服务
一篇文章搞定Docker私服搭建--Harbor

一篇文章搞定Docker私服搭建--Harbor

作者: 贤思齐焉 | 来源:发表于2020-01-21 15:09 被阅读0次

    Docker的应用越来越广泛,在公司内部搭建一台私服是刚需需求。Docker官方提供了Registry具备此功能,但管理方面较弱,不适合企业级的应用,今天给大家介绍Harbor的使用。 Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。 鉴于网上很多文件介绍较为片面,本篇文章作出如下总结和整理。 文章分为安装、Harbor使用介绍、镜像操作三部分,全面介绍Harbor的使用,整体来说,安装简单、使用简单。

    相关安装

    Docker安装

    # yum 包更新
    [root@centos7 ~]# yum update
    
    # 卸载旧版本 Docker
    [root@centos7 ~]# yum remove docker docker-common docker-selinux docker-engine
    
    # 安装软件包
    [root@centos7 ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
    
    # 添加 Docker yum源
    [root@centos7 ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    
    # 安装 Docker
    [root@centos7 ~]# yum -y install docker-ce
    
    # 启动 Docker
    [root@centos7 ~]# systemctl start docker
    
    # 查看 Docker 版本号
    [root@centos7 ~]# docker --version
    复制代码
    

    Docker Compose 安装

    # 安装 epel-release
    [root@centos7 ~]# yum install epel-release
    
    # 安装 python-pip
    [root@centos7 ~]# yum install -y python-pip
    
    # 安装 docker-compose
    [root@centos7 ~]# pip install docker-compose
    
    # 安装 git
    [root@centos7 ~]# yum install -y git
    
    # 查看 docker-compose 版本号
    [root@centos7 ~] docker-compose -version
    复制代码
    

    如果安装python出现如下错误:

    Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-WImLdR/pyparsing/
    复制代码
    

    可尝试执行如下指令:

    sudo python -m pip install --upgrade --force pip
    sudo pip install setuptools==33.1.1
    复制代码
    

    安装harbor

    下载

    文件地址:下载地址-github

    wget https://github.com/goharbor/harbor/releases/download/v1.9.3/harbor-offline-installer-v1.9.3.tgz
    复制代码
    

    这里通过以上指令下载,默认下载在当前文件夹

    配置

    解压,得到如下

    tar -zxvf harbor-offline-installer-v1.9.3.tgz
    复制代码
    
    Image.png
    配置harbor.yml Image [1].png
    配置docker-compose.yml[图片上传中...(image-474798-1579590383132-7)]
    Image [2].png

    运行安装指令

    sudo ./install.sh
    复制代码
    

    如果出现如下结果,恭喜你,成功安装

    Image [3].png

    至此,安装步骤完成

    harbor使用

    访问地址 //hostname:port (hostname 和 port 为上述配置)

    Image [4].png
    Image [5].png
    以下是对关键功能介绍

    项目

    以项目的维度划分镜像,可以理解为镜像组,相同镜像的不同版本可以放在一个项目里,同样项目里有完成的仓库、成员、标签、日志的管理。 注意,此处的标签,不建议维护,用全局的设置,最好最好统一,如何设置,稍后讲到

    日志

    harbor将日志分为日志和事件日志,比较简单,就不赘述了


    Image [6].png Image [7].png

    系统管理

    用户管理 用于操作用户的增删、密码重置

    仓库管理 拉取其他服务器镜像到本地

    同步管理 可定时去拉取最新镜像

    任务

    垃圾清理 定时清空无用镜像

    配置管理

    此功能比较清晰,主要想介绍下标签,此处标签为全局,供所有镜像使用


    Image [8].png

    镜像推送

    首先面临的是HTTP推送问题,

    ERROR: Get https://192.168.1.111:81/v2/: http: server gave HTTP response to HTTPS client
    复制代码
    

    docker默认的是HTTPS,大部分场景Harbor在内网,没有HTTPS,则需要设置去除,方法简单:

    Image [9].png

    Linux操作

    vi /etc/docker/daemon.json
    # 内容如下
    {
        "insecure-registries":["harbor.goodcol.com:81"]
    }
    # 加载和重启服务
    systemctl daemon-reload
    systemctl restart docker
    复制代码
    

    镜像推送和拉取

    #从私服拉取镜像 docker pull 私服地址/仓库项目名/镜像名:标签
    复制代码
    

    镜像推送

    #推送
    docker login 服务器地址:port
    
    #镜像打标签 ,要重新打标签,标签默认是官网地址
    docker tag 镜像名:标签 私服地址/仓库项目名/镜像名:标签
    
    #推送指令
    docker push 私服地址/仓库项目名/镜像名:标签
    
    

    相关文章

      网友评论

        本文标题:一篇文章搞定Docker私服搭建--Harbor

        本文链接:https://www.haomeiwen.com/subject/lwsezctx.html