一、Harbor

1、Harbor是构建企业级私有docker镜像的仓库的开源解决方案,它是Docker Registry的更高级封装,它除了提供友好的Web UI界面,角色和用户权限管理,用户操作审计等功能外,它还整合了K8s的插件(Add-ons)仓库,即Helm通过chart方式下载,管理,安装K8s插件,而chartmuseum可以提供存储chart数据的仓库【注:helm就相当于k8s的yum】。另外它还整合了两个开源的安全组件,一个是Notary,另一个是Clair,Notary类似于私有CA中心,而Clair则是容器安全扫描工具,它通过各大厂商提供的CVE漏洞库来获取最新漏洞信息,并扫描用户上传的容器是否存在已知的漏洞信息,这两个安全功能对于企业级私有仓库来说是非常具有意义的。

2、简单来说harbor就是VMWare公司提供的一个docker私有仓库构建程序,功能非常强大.

支持多租户签名和认证 支持安全扫描和风险分析 这次日志审计 基于角色的访问控制 支持可扩展的API和GUI Image replication between instances 国际化做的很好(目前仅支持英文和中文)

二、安装部署harbor v1.10.0

harbor git 地址://github.com/goharbor/harbor harbor支持k8s的helm安装和本地安装,我这次先择的安装方式是本地安装。 我的运行环境是 Rhel7.6

安装准备

1.需要安装docker并运行,docker安装可以参考: //blog.csdn.net/qq_35887546/article/details/105366356

2.需要安装docker-compose

curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o/usr/local/bin/docker-compose

给docker-compose执行权限,运行命令

chmod +x /usr/local/bin/docker-compose

检查运行docker-compose --version,如下:

[root@master ~]# docker-compose --version
version 1.23.2, build 1110ad01

安装

1、下载安装包

下载地址:/github.com/goharbor/harbor/releases 直接选择编译好的包

image.png

这里有两个包Harbor offline installer 和 Harbor online installer,两者的区别的是 Harbor offline installer 里就包含的 Harbor 需要使用的镜像文件

下载成功,并解压

[root@master ~]# tar zxf harbor-offline-installer-v1.10.1.tgz -C /data/

进入解压的目录,并 ls

[root@master ~]# cd /data/harbor/
[root@master harbor]# ls
common.sh harbor.v1.10.1.tar.gz harbor.yml install.sh LICENSE prepare

2、编辑配置文件

harbor.yml 就是harbor的配置文件 harbor的数据目录为/data 编辑harbor.yml,修改hostname、https证书路径、admin密码

证书的制作可以参考://www.jianshu.com/p/721455035190

注意:每次修改完配置文件后都需要运行

[root@master harbor]# ./prepare

运行 ./install.sh

[root@master harbor]# ./install.sh

image.png

运行成功docker ps 查看,可以看到服务已经起来

image.png

常用管理命令

停止服务: docker-compose stop
开始服务: docker-compose start
重启服务:docker-compose restart
停止服务并删除容器:docker-compose down
启动服务并运行容器:docker-compose up

注意:这些命令均要在harbor目录下运行

三、GUIl界面使用

浏览器访问//harbor域名地址

输入用户名admin,密码admin登陆

image.png

新建一个命名为cicd项目,并设置访问级别为公开

这里的项目就是一私有化的Docker镜像仓库,默认的仓库是library

四、本机上传拉取镜像

1、修改Docker配置 docker 默认是按 https 请求的 修改文件 /etc/docker/daemon.json

[root@master harbor]# cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://registry.docker-cn.com"],
"insecure-registries" : ["harbor域名地址:端口号"]
}

然后重启docker

systemctl daemon-reload
systemctl restart docker

2、制作镜像 将 nginx 制作成一个私有镜像

docker tag nginx:latest harbor域名地址:端口号/cicd/nginx:latest

本机上传

首先登陆私有库

[root@master harbor]# docker login harbor域名地址:端口号
Authenticating with existing credentials...
WARNING! Your password will be stored unencrypted in /root/.docker/config.json
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-storeLogin Succeeded

接下来进行PUSH

[root@master harbor]# docker push harbor域名地址:端口号/cicd/nginx
The push refers to repository [harbor域名地址:端口号/cicd/nginx]
16542a8fc3be: Pushed
6597da2e2e52: Pushed
977183d4e999: Pushed
c8be1b8f4d60: Pushed
latest: digest: sha256:e5dd9dbb37df5b731a6688fa49f4003359f6f126958c9c928f937bec69836320 size: 1152

可以在网页端查看结果

image.png

从后台已经能看到这个镜像了

本机拉取

[root@master harbor]# docker rmi harbor域名地址:端口号/cicd/nginx #删除原来的镜像
[root@master harbor]# docker rmi harbor域名地址:端口号/cicd/nginx
Untagged: harbor域名地址:端口号/cicd/nginx:latest
Untagged: harbor域名地址:端口号/cicd/nginx@sha256:2f1cd90e00fe2c991e18272bb35d6a8258eeb27785d121aa4cc1ae4235167cfd[root@master harbor]# docker pull harbor域名地址:端口号/cl/nginx #拉取镜像
Using default tag: latest
latest: Pulling from cl/nginx
Digest: sha256:
Status: Downloaded newer image for harbor域名地址:端口号/cl/nginx:latest
harbor域名地址:端口号/cl/nginx:latest[root@master harbor]# docker pull harbor域名地址:端口号/cicd/nginx
Using default tag: latest
latest: Pulling from cicd/nginx
Digest: sha256:2f1
Status: Downloaded newer image for harbor域名地址:端口号/cicd/nginx:latest
harbor域名地址:端口号/cicd/nginx:latest

Harbor构建企业级私有docker镜像的仓库的开源解决方案相关推荐

  1. centos7镜像加速_使用阿里云容器镜像服务托管私有Docker镜像

    一个只用markdown语法编写文章的90后野路子Web架构师,每天都分享一些有用的知识点,欢迎关注- 前言 概述 本文主要讲解如何托管自己的Docker镜像到阿里云容器镜像服务ACR上,以及如何使用 ...

  2. docker 修改阿里镜像源_使用阿里云容器镜像服务托管私有Docker镜像

    一个只用markdown语法编写文章的90后野路子Web架构师,每天都分享一些有用的知识点,欢迎关注- 前言 概述 本文主要讲解如何托管自己的Docker镜像到阿里云容器镜像服务ACR上,以及如何使用 ...

  3. Docker系列之三:使用Docker镜像和仓库

    系列链接 Docker系列之一:Docker介绍及在Ubuntu上安装 Docker系列之二:Docker 入门 Docker系列之三:使用Docker镜像和仓库 Docker系列之四:Dockerf ...

  4. 构建多平台Docker镜像

    利用 Docker 19.03 以上版本引入的插件 buildx[4],可以很轻松地构建多平台 Docker 镜像.buildx 是 docker build ... 命令的下一代替代品,它利用 Bu ...

  5. 构建SpringBoot应用Docker镜像

    准备工作 使用到的工具及运行环境: JDK 1.8 及以上 Gradle 4+ 或 Maven 3.2+ 开发工具 Spring Tool Suite (STS) IntelliJ IDEA 创建Sp ...

  6. Docker镜像的仓库(Harbor)

    一.简介 1.镜像的仓库 镜像仓库用于存放 Docker镜像 Docker registry提供镜像仓库服务 一个 Docker registry可以包含多个镜像仓库 仓库分为公共镜像仓库与私有镜像仓 ...

  7. docker镜像和仓库

    文章目录 一.docker镜像 1.镜像的分层结构 (1).分层结构案例 (2).容器层详解 2.镜像的构建 (1). 创建一个Dockerfile (2).构建镜像 (3).查看镜像的分层结构 (4 ...

  8. 使用Docker镜像和仓库(4)

    创建一个基本的Docker容器:$ sudo docker run -i -t --name another_container_mum ubuntu /bin/bash root@b415b317a ...

  9. 第一章 docker 镜像,容器,仓库基本命令(二)

    仓库(repository)是镜像存放的地方,目前官方维护了一个公共仓库 https://hub.docker.com; 具体的操作自行百度, 这里我们讨论如何搭建私有仓库 1.拉取仓库 $ dock ...

  10. 使用Docker镜像和仓库

    为什么80%的码农都做不了架构师?>>>    Docker镜像 由文件系统叠加而成 最底端第一层是引导文件系统bootfs,类似grub 镜像第二层是root文件系统rootfs ...

最新文章

  1. Visual Studio 2017 15.8概览
  2. 寄Android开发Gradle你需要知道的知识
  3. 【OJ】洛谷顺序结构题单题解锦集
  4. 如何在SQL Server 2016中使用R导入/导出CSV文件
  5. 《设计模式详解》软件设计原则
  6. linux patch
  7. router单页面多个标签tags的用法router-view/router-view
  8. 继电保护整定值计算软件_通用型继电保护整定计算软件的分析.pdf
  9. 【2022国赛官方评审要点发布】2022高教社杯全国大学生数学建模竞赛官方评阅要点
  10. es java api 查询_es聚合查询javaapi
  11. 阿里云云效流水线教程
  12. pycharm one dark主题设置及下载
  13. P1135 奇怪的电梯题解
  14. Chrome 浏览器有些网站无法保存密码,手动保存
  15. Java基础 - 集合框架(5) : Map集合、Collections
  16. uniapp如何使用微信开发者工具调试
  17. 自己动手做聊天机器人 三-语料与词汇资源
  18. android tv播放ftp,乐视TV超级电视FTP功能的详细使用方法步骤
  19. b2c购物网站经营的几个要素
  20. 盘点不常用却很有用的代码 ,欢迎大家留言

热门文章

  1. php revel,Revel 概念
  2. ESC/POS常用打印指令面向对象封装,PHP处理二维码定位,微信小程序蓝牙打印
  3. html css图片展开动画,9种CSS3炫酷图片预览展示动画特效
  4. python range 小数_python中如何表示一个无限循环小数?(不用分数的形式)python,使用range语...
  5. S32K--输入捕获(FTM_IC)配置与使用学习笔记(SDK3.0)
  6. 荣耀3x android 5.0,华为荣耀3X畅玩版_EMUI2.3_Android4.4_完整
  7. 搜狗站长html标签验证,教你把企业网站添加到搜狗站长平台
  8. 从布朗运动到Black–Scholes
  9. 一人一猫旅行记之浅析单例模式
  10. Oracle ORA12514 监听程序当前无法识别连接描述符中请求的服务问题解决