Harbor源码地址:https://github.com/vmware/harborHarbort特性:
基于角色控制
用户和仓库都是基于项目进行组织的, 而用户基于项目可以拥有不同的权限。
基于镜像的复制策略
镜像可以在多个 Harbor 实例之间进行复制。
支持 LDAP
Harbor 的用户授权可以使用已经存在 LDAP 用户。
镜像删除 & 垃圾回收
Image 可以被删除并且回收 Image 占用的空间,绝大部分的用户操作 API, 方便用户对系统进行扩展。
用户 UI
用户可以轻松的浏览、搜索镜像仓库以及对项目进行管理。
轻松的部署功能
Harbor 提供了 online、offline 安装, 除此之外还提供了 virtual appliance 安装
系统要求:
docker 1.10.0 以上版本,安装文档:https://docs.docker.com/engine/installation/
docker-compose 1.6.0 以上版本,安装文档:https://docs.docker.com/compose/install/软件安装:yum -y install certbot libevent-devel gcc libffi-devel python-devel openssl-devel python2-pip
yum -y install docker
启动 docker,使用如下命令行:
systemctl start docker
systemctl enable docker
使用 pip 方式安装 docker-compose,使用如下命令:
pip install -U docker-compose
查看 docker-compose 的版本,如下:
docker-compose version
离线版本下载:
https://github.com/vmware/harbor/releases以v1.1.2版本为例
wget https://github.com/vmware/harbor/releases/download/v1.1.2/harbor-offline-installer-v1.1.2.tgzmv harbor-offline-installer-v1.1.2.tgz /data/ && cd /data/tar xvf harbor-offline-installer-v1.1.2.tgz
mkdir -p /data/harbor/cert
切换工作路径切证书存放目录
cd /data/harbor/cert
创建CA根证书
openssl req -newkey rsa:4096 \
-nodes -sha256 -keyout ca.key -x509 -days 365 \
-out ca.crt -subj "/C=CN/L=Shenzhen/O=lisea/CN=harbor-registry"
生成一个证书签名, 设置访问域名为harbor.test.com
openssl req -newkey rsa:4096 \
-nodes -sha256 -keyout harbor.test.com.key \
-out server.csr -subj "/C=CN/L=Shenzhen/O=lisea/CN=harbor.test.com"
生成主机证书
openssl x509 -req -days 365 \
-in server.csr -CA ca.crt -CAkey ca.key \
-CAcreateserial -out harbor.test.com.crt
配置文件修改:
vim harbor.cfg
# 根据需求进行配置,至少修改 host 改为 harbor 服务器的 IP 地址或者域名
hostname = harbor.test.com
ui_url_protocol = https
# 邮件相关信息配置,如忘记密码发送邮件
email_server = smtp.163.com
email_server_port = 25
email_username = vip_star_hr@163.com
email_password = xxxxxx
email_from = docker <vip_star_hr@163.com>
email_ssl = false
# 设置证书路径
ssl_cert = /data/harbor/cert/harbor.test.com.crt
ssl_cert_key = /data/harbor/cert/harbor.test.com.key
通过自带脚本一键安装
sh install.sh
通过浏览器访问管理 [提前设置本地hosts文件本地重定向至harbor服务器IP]
https://harbor.test.com
用户默认为 admin
密码默认为 Harbor12345
客户端使用测试
创建 public 项目, 访问级别选择公开

创建仓库证书存放目录
mkdir /etc/docker/certs.d/harbor.test.com
从 harbor 服务器获取证书至仓库证书目录
scp root@harbor-server-ip:/data/harbor/cert/ca.crt /etc/docker/certs.d/harbor.test.com/ca.crt
用户登陆[ 本地需要做 hosts harbor.test.com 域名重定向至 harbor 服务器 IP]
docker login -u admin -p Harbor12345 harbor.test.com
提示"Login Succeeded"既成功
docker下载redis镜像:
docker pull redis
使用docker tag将镜像改名

上传镜像到harbor仓库

登录web查看镜像是否上传成功

删除本地镜像
docker rmi harbor.test.com/public/redis:v1.0.0
从harbor中下载镜像
docker pull harbor.lisea.cn/public/redis:v1.0.0
其他说明:
停止 Harbor 服务:
$ docker-compose stop
启动 Harbor 服务:
$ docker-compose start
如果需要修改 Harbor 的配置,首先需要停掉正在运行的 Harbor 实例,更新 harbor.cfg 文件,再次运行install.sh
$ docker-compose down
$ vim harbor.cfg
$ sh install.sh
删除 Harbor 容器,保存镜像文件和 Harbor 的数据库文件:
$ sudo docker-compose rm
删除 Harbor 的数据库信息和镜像文件 (一般为了纯净安装):
$ rm -r /data/database
$ rm -r /data/registry
默认情况下,regirstry 的数据被持久化到目标主机的/data/目录,当 Harbor 的容器被删除或者重新创建的时候,数据不会有任何改变

Docker 私有仓库 Harbor registry 安全认证搭建 [Https]的更多相关文章

  1. docker 私有仓库 harbor docker-compose

    c创建docker私有仓库 docker pull registry:2.1.1 mkdir /opt/registry#mkdir /var/lib/registry docker run -d - ...

  2. 微服务探索之路03篇-docker私有仓库Harbor搭建+Kubernetes(k8s)部署私有仓库的镜像

    ❝ 目录: 微服务探索之路01篇.net6.0项目本地win10系统docker到服务器liunx系统docker的贯通 微服务探索之路02篇liunx ubuntu服务器部署k8s(kubernet ...

  3. Docker私有仓库Harbor部署与使用

    一.harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器. 由下面几个组件组成: proxy:nginx前端代理,主要是分发前端页面ui访问和镜像上传和下载 ...

  4. 企业级Docker私有仓库Harbor

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

  5. 物联网架构成长之路(44)-Docker私有仓库Harbor

    0. 前言 安装docker.docker-compose,这些在我以前的博客讲过,这里就不继续说明了,有需要的可以参考我之前的博客. https://www.cnblogs.com/wunaozai ...

  6. docker私有仓库-harbor

    简单说一下Harbor的部署,踩了几个坑,参考同事大神的配置文件,一脸懵逼的部署出来了,其中部分内容参考了网上一些大神的文档,本篇文章仅供参考学习,如有雷同,万分荣幸. 这篇文档仅限于centos7参 ...

  7. 搭建docker私有仓库(https)

    1.修改openssl.cnf,支持IP地址方式,HTTPS访问在Redhat7或者Centos系统中,文件所在位置是/etc/pki/tls/openssl.cnf.在其中的[ v3_ca]部分,添 ...

  8. 手把手教你搭建Docker私有仓库

    章节一:centos7 docker安装和使用_入门教程 章节二:使用docker部署Asp.net core web应用程序 有了前面的基础,接下来的操作就比较简单了.先准备两台虚拟机,两台机器上都 ...

  9. Docker 私有仓库建立(加密和用户验证)

    (一)生成证书1.mkdir /certs2.cd /certs 3.生成自签名证书 sudo openssl req -newkey rsa:2048 -new -nodes -x509 -days ...

随机推荐

  1. C++入门之初话多态与虚函数

    多态性是面向对象程序设计的又一个重要思想,关于多态的详尽描述,请看本人的收藏https://www.cnblogs.com/hust-ghtao/p/3512461.html.这篇博文中,详尽的探讨了 ...

  2. Consecutive Subsequence CodeForces - 977F (map优化DP)·

    You are given an integer array of length nn. You have to choose some subsequence of this array of ma ...

  3. 学习yii2.0——依赖注入

    依赖注入 依赖注入是一种设计模式,可以搜索“php依赖注入”,这里不阐述了. yii框架的依赖注入 Yii 通过 yii\di\Container 类提供 DI 容器特性. 它支持如下几种类型的依赖注 ...

  4. MySql数据库连接池专题

    MySql数据库连接池专题 - aspirant - 博客园https://www.cnblogs.com/aspirant/p/6747238.html

  5. mybatis一级缓存详解

    mybatis缓存分为一级缓存,二级缓存和自定义缓存.本文重点讲解一级缓存 一:前言 在介绍缓存之前,先了解下mybatis的几个核心概念: * SqlSession:代表和数据库的一次会话,向用户提 ...

  6. centOS7搭建NFS服务器

    借鉴别人这篇博客搭建成功的:http://blog.51cto.com/mrxiong2017/2087001 NFS系统:用来共享文件.图片.视频 准备两个centOS7服务器,一个作NFS ser ...

  7. mysql逻辑架构

    逻辑架构图 MySQL有点与众不同,它的逻辑架构可以在多种不同的场景中应用并发挥良好的作用.主要体现在存储引擎的架构上,插件式的存储引擎架构将查询处理和其他的系统任务以及数据的存储提取相分离.这种架构 ...

  8. 安装MongoDB(做成Windows服务)并加载C#驱动程序

    一 Mongodb简介: 通过查询网上的一些信息来介绍一下Mongodb的优势:MongoDB是一个面向文档的数据库,目前由10gen开发并维护,它的功能丰富,齐全,完全可以替代MySQL.在使用Mo ...

  9. 莫烦keras学习自修第一天【keras的安装】

    1. 安装步骤 (1)确保已经安装了python2或者python3 (2)安装numpy,python2使用pip2 install numpy, python3则使用pip3 install nu ...

  10. mybatis generator的maven插件,找不到properties的配置文件错误的解决

    第一次运行的时候,maven插件是正确运行了的 但后面对 maven 的 build节点做了一点修改,就开始报错,找不到 properties标签指定的的数据库连接配置文件了 修改部分如下: 这个操作 ...