一、前沿

docker的官方镜像仓库registry,功能比较单一,不太好用,特别是删除镜像操作,不够友好。

Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,

例如安全、标识和管理等,扩展了开源Docker Distribution。作为一个企业级私有Registry服务器,

Harbor提供了更好的性能和安全。提升用户使用Registry构建和运行环境传输镜像的效率。

Harbor支持安装在多个Registry节点的镜像资源复制,镜像全部保存在私有Registry中,

确保数据和知识产权在公司内部网络中管控。另外,Harbor也提供了高级的安全特性,诸如用户管理,访问控制和活动审计等。

安装环境:

 Linux UbuntuServer 4.4.--generic #-Ubuntu SMP Mon Dec  :: UTC  x86_64 x86_64 x86_64 GNU/Linux
Docker version 17.09.-ce, build 19e2cf6
docker-compose version 1.17., build 6d101fb

二、安装docker(略)

三、安装docker-compose(略)

四、安装Harbor

下载Harbor

wget http://harbor.orientsoft.cn/harbor-v1.3.0/harbor-offline-installer-v1.3.0.tgz

解压

tar -xzvf harbor-offline-installer-v1.3.0.tgz

得到安装配置文件

这里使用HTTP Insecure Registry。

打开harbor.cfg,修改hostname = 本机ip:端口,默认是80端口,如果80被占用,则需要换端口,比如hostname = 10.0.3.16:7077,

同时打开docker-compose.yml,修改ngxin的转发端口,比如:

proxy:
image: vmware/nginx-photon:1.11.
container_name: nginx
restart: always
volumes:
- ./common/config/nginx:/etc/nginx:z
networks:
- harbor
ports:
- :
- :
- :
depends_on:
- mysql
- registry
- ui
- log
logging:
driver: "syslog"
options:
syslog-address: "tcp://127.0.0.1:1514"
tag: "proxy"

然后保存,启动Harbor:

./install.sh

查看各容器状态:

docker-compose ps

确保各容器状态都在“up”,即可访问管理界面http://10.0.3.16:7077

各容器的日志记录在:/var/log/harbor/

用户名admin,密码:Harbor12345,配置文件harbor.cfg里有。

五、尝试上传和拉取镜像

登陆Harbor之后,创建一个项目,并选择“公开”:

可以看到此时项目里没有镜像:

现在上传一个镜像,上传之前由于Harbor使用的HTTP Insecure Registry模式,所以需要设置docker允许使用Insecure Registry。

vim /etc/docker/daemon.json

写入insecure-registries

{
"registry-mirrors": ["https://registry.docker-cn.com"],
"insecure-registries": [
"10.0.3.16:7077"
] }

重启docker:

 systemctl daemon-reload
systemctl restart docker

上传一个修改过的busybox:

 docker pull busybox
docker tag busybox 10.0.3.16:/myregistry/busybox:v1.
docker login 10.0.3.16: # 用户名:admin,密码:Harbor12345
docker push 10.0.3.16:/myregistry/busybox:v1.

可以看到Harbor仓库里面已经有了:

换一台机器,尝试拉取:

docker pull 10.0.3.16:/myregistry/busybox:v1.

也是可以的。

六、参考:

https://blog.csdn.net/nklinsirui/article/details/87924176

Harbor各版本:http://harbor.orientsoft.cn/

使用docker搭建“企业级镜像仓库”Harbor的更多相关文章

  1. 【Docker】企业级镜像仓库harbor的搭建(http/https)及使用

    一:用途 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器. 二:安装docker-ce 环境:阿里云轻量应用服务器CentOS 7.3 这里通过yum Docker源仓 ...

  2. 企业级镜像仓库harbor搭建

    企业级镜像仓库harbor搭建 一.    Harbor概述 VMware公司最近开源了企业级Registry项目Harbor,其的目标是帮助用户迅速搭建一个企业级的Docker registry 服 ...

  3. Kubernetes-5:搭建企业级私有仓库Harbor

    搭建企业级私有仓库Harbor 安装需求 python版本 >= 2.7 Docker引擎版本 >= 1.10 docker-compose版本 >= 1.6.0 安装环境 一.Py ...

  4. 企业级镜像仓库 harbor

    企业级镜像仓库 harbor 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云服务器 c. 上一篇:跨 Docker 宿主机网络 overlay 类型 h ...

  5. docker进阶-搭建私有企业级镜像仓库Harbor

    为什么要搭建私有镜像仓库   对于一个刚刚接触Docker的人来说,官方的Docker hub是用于管理公共镜像.既然官方提供了镜像仓库我们为什么还要去自己搭建私有仓库呢?虽然也可以托管私有镜像.我们 ...

  6. Docker 企业级镜像仓库 Harbor 的搭建与维护

    目录 一.什么是 Harbor 二.Harbor 安装 2.1.Harbor 安装环境 2.2.Harbor安装 2.3 配置HTTPS 三.Harbor 的使用 3.1.登录Harbor并使用 3. ...

  7. Docker: 企业级镜像仓库Harbor的使用

    上一节,演示了Harbor的安装部署 这次我们来讲解 Harbor的使用. 我们需要了解到: 1. 如何推镜像到镜像仓库 2. 如何从镜像仓库拉取镜像 3. 如何运行从私有仓库拉取的镜像 # 查看 h ...

  8. docker实战——Docker本地私有镜像仓库Harbor搭建及配置

    Harbor介绍 Docker容器应用的开发和运行离不开可靠的镜像管理,虽然docker官方提供了公共的镜像仓库(Docker Hub),但是从安全和效率等方面考虑,部署我们私有环境内的Registr ...

  9. docker企业级镜像仓库Harbor管理

    Harbor概述 Harbor是由VMWare公司开源的容器镜像仓库.事实上,Harbor是在Docker Registry上进行了相应的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括: ...

随机推荐

  1. MATLAB基本概念和变量

    基本概念 1.x=int8(129)=>x=127     (带符号8位整数,最大值为127) x=uint8(129)=>x=129  (无符号型,最大值为255) 2.class函数得 ...

  2. C#:新邮件监听及搜索

    在项目中,我们需要监听邮件服务器,看是否有新的邮件进入.下面的代码可以帮助我们监听新邮件,并对已有的邮件进行查找: using System; using System.Collections.Gen ...

  3. css有关鼠标移动上去图片变透明度变化

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. struts2的java.lang.NoSuchMethodException异常处理

    1. 你有没有试试看 其它的方法能不能用,要是都是这种情况的话,可能是你的Action类没有继承structs里面的DispatchAction或者其它的类.还有你注意下方法的参数列表,类型顺序要正确 ...

  5. .vimrc的配置

    set nocompatible set encoding=utf-8 set fileencodings=utf-8,chinese set tabstop=4 set cindent shiftw ...

  6. .net iis6中配置伪静态

    1.右键点击 要设置网站的网站 2.属性 ——>主目录 ——>配置——> 3.如右侧窗口,找到 .aspx 扩展名——>编辑——>复制 可执行文件的路径——>关闭 ...

  7. CentOS 使用RPM方式安装MySQL5.6

    转载自:http://blog.csdn.net/liumm0000/article/details/18841197 RPM方式安装MySQL5.6 a. 检查MySQL及相关RPM包,是否安装,如 ...

  8. Java中的阻塞队列-ArrayBlockingQueue(一)

    最近在看一些java基础的东西,看到了队列这章,打算对复习的一些知识点做一个笔记,也算是对自己思路的一个整理,本章先聊聊java中的阻塞队列 参考文章: http://ifeve.com/java-b ...

  9. Hibernate课程 初探多对多映射1-1 多对多应用场景

    1 用途: 员工和项目之间的多对多关系 2 实现: 员工表和项目表之外,建立员工和项目关联表来实现: 3 hibernate应用: set元素和many-to-many来实现

  10. php socket简单使用

    php的socket编程算是比较难以理解的东西吧,不过,我们只要理解socket几个函数之间的关系,以及它们所扮演的角色,那么理解起来应该不是很难了,在笔者看来,socket编程,其实就是建立一个网络 ...