常见的几种开源镜像仓库介绍
常见的几种开源镜像仓库介绍
- 1、Docker Registry
- 2、VMware Harbor
- 安装部署Harbor
- 3、Sonatype Nexus
- 4、SUSE Portus
- 以上几种方案的特性对比
1、Docker Registry
Docker Registry是最流行的开源私有镜像仓库,以镜像格式发布,在下载后运行一个Docker Registry容器即可启动一个私有镜像仓库服务:
# 创建存放用户信息的目录mkdir /opt/registry-var/auth/ -p
# 为{andriy}用户名生成密码为{pass@word1}的一条用户信息,存在{/opt/registry-var/auth/htpasswd}文件里面docker run --entrypoint htpasswd docker.io/registry -Bbn andriy pass@word1 >> /opt/registry-var/auth/htpasswd
# 启动registry容器docker run -d -p 5000:5000 --restart=always -v /opt/registry-var/auth/:/auth/ -e "REGISTRY_AUTH=htpasswd" -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd -v /opt/registry-var/:/var/lib/registry/ --name registry docker.io/registry
Docker Registry的有点如下:
(1)Docker Registry的最大优点就是简单,只需要运行一个容器就能集中管理一个集群范围内的镜像,其他机器就能从该镜像仓库下载镜像了。
(2)在安全性方面,Docker Registry支持TLS和基于签名的身份验证。
(3)Docker Registry也提供了Restful API,以提供外部系统调用和管理镜像库中的镜像
2、VMware Harbor
VMware Harbor(简称Harbor)项目是由VMware中国研发团队开发的开源容器镜像仓库系统,基于Docker Registry并对其进行了许多增强,主要特性包括:
- 基于角色的访问控制
- 镜像复制
- Web UI管理界面
- 可以集成LDAP或AD用户认证系统
- 审计日志
- 提供RESTful API以提供外部客户端调用
- 镜像安全漏洞扫描(从v1.2版本开始集成了Clair景象扫描工具)
安装部署Harbor
# 安装Docker及Docker-composeyum install -y --setopt=obsoletes=0 docker-ce-17.03.1.ce-1.el7.centoscurl -L https://github.com/docker/compose/releases/download/1.9.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
# 下载Harbor安装包wget https://storage.googleapis.com/harbor-releases/harbor-offline-installer-v1.6.1.tgz
# 配置Harbor及Dockertar zxvf harbor-offline-installer-v1.6.1.tgzcd harbor/修改harbor.cfg文件中hostname为主机IP在docker的daemon.json中添加本机80端口的insecure-registry重启docker
# 安装harborsh instsll.sh输出如下:[Step 0]: checking installation environment ...Note: docker version: 17.03.1Note: docker-compose version: 1.9.0[Step 1]: loading Harbor images ...下载镜像...[Step 2]: preparing environment ...
generated and saved secret key
Generated configuration file: ./common/config/nginx/nginx.conf
Generated configuration file: ./common/config/ui/env
Generated configuration file: ./common/config/ui/app.conf
Generated configuration file: ./common/config/registry/config.yml
Generated configuration file: ./common/config/db/env
Generated configuration file: ./common/config/jobservice/env
Generated configuration file: ./common/config/jobservice/app.conf
Generated configuration file: ./common/config/ui/private_key.pem
Generated configuration file: ./common/config/registry/root.crt
The configuration files are ready, please use docker-compose to start the service.[Step 3]: checking existing instance of Harbor ...[Step 4]: starting Harbor ...
Creating network "harbor_default" with the default driver
Creating harbor-log
Creating harbor-db
Creating harbor-ui
Creating registry
Creating harbor-jobservice
Creating nginx✔ ----Harbor has been installed and started successfully.----Now you should be able to visit the admin portal at http://39.105.109.179.
For more details, please visit https://github.com/vmware/harbor .
安装部署完成之后可以通过浏览器登陆UIip:80
默认用户名密码admin/Harbor12345
Harbor相对于Docker Registry,提供了更好的用户管理、角色权限管理、审计日志,以及多个Harbor镜像仓库之间的镜像复制功能,可以用作企业私有镜像库的服务器。不过由于Harbor的组件较多,所以与外界的集成较为复杂。
3、Sonatype Nexus
Sonatype Nexus是一个软件仓库管理器,主要有2.X和3.X两个大版本。2.X版本主要支持Maven、P2、OBR、Yum等仓库软件;3.X版本主要支持Docker、NuGet、npm、Bower、PyPI、Ruby Gems、Apt、Conam、R、CPAN、Raw、Helm等仓库软件,也支持构建工具Maven。
Sonatype Nexus的特点如下:
- 部署简单,通过启动一个容器即可完成
docker run -d --name nexus -p 5000:5000 -p 8081:8081 sonatype/ docker.io/sonatype/nexus3
- 支持TLS安全认证
- 提供Web UI管理界面
- 支持代理仓库(Docker Proxy),可以将到Nexus镜像仓库的操作代理到另一个远程镜像库
- 支持仓库组(Docker Group),可以把多个仓库组合成一个地址提供服务
- 除了支持Docker镜像,还支持对其他软件仓库的管理,例如:Yum、Npm等。目前不支持APK(alpine系统软件仓库)
下图是Nexus界面
4、SUSE Portus
SUSE Portus是另一个开源镜像库,其特点包括:
- 基于组(Team)和命名空间(Namespace)的细粒度访问权限控制
- Web UI管理界面
- 可以集成LDAP用户认证系统,也支持OAuth
- 审计日志
- 提供RESTful API,以供外部客户端调用
- 镜像安全漏洞扫描(集成Clair镜像扫描工具)
以上几种方案的特性对比
方案特性 | Docker Registry | VMware Harbor | Sonatype Nexus | SUSE Portus |
---|---|---|---|---|
系统复杂度 | 简单 | 复杂 | 简单 | 一般 |
配置难易度 | 简单 | 复杂 | 一般 | 一般 |
Web UI管理界面 | 无 | 有 | 有 | 有 |
与外部LDAP/AD集成 | 无 | 有 | 有 | 有 |
访问权限控制 | 弱 | 强 | 弱 | 强 |
镜像复制 | 无 | 支持复制到另一个Harbor镜像库 | 支持Proxy代理到另一个镜像库 | 弱 |
镜像扫描 | 无 | 可集成Clair | 无 | 可集成Clair |
常见的几种开源镜像仓库介绍相关推荐
- mysql开源系协议_常见的几种开源协议
在学习中经常能看到一些词,例如:GPL,LGPL等等,自打上学那会就遇见过,对它们的具体含义却不了解,今天给它们总结一下. 说到开源协议,不得不提GNU.课本上给的定义是"GNU is No ...
- 企业级|Harbor镜像仓库合体Nutanix超融合
本文所指的"合体"是从技术层面将Nutanix超融合基础架构和Harbor开源镜像仓库基于企业级需求进行的一次部署实践,旨在开源热潮中抛砖引玉似的分享一些新的尝试. 企业级 标题中 ...
- Docker私有镜像仓库是什么?
Docker镜像仓库概述 镜像仓库作为Docker技术的核心组件之一,其主要作用就是负责镜像内容的存储和分发.Docker镜像仓库从使用范围来说分为"公有镜像仓库"和"私 ...
- Docker镜像仓库清理的探索之路
用友云开发者中心是基于Docker容器进行微服务架构应用的落地与管理.相信各位同学在使用的过程中,会发现随着Docker镜像的增多,占用磁盘空间也约来越多.这时我们需要清理私有镜像仓库中不需要的镜像. ...
- 镜像 网站 linux 程序,腾讯开源镜像网站(腾讯云软件源)地址,附使用说明
腾讯开源镜像网站(腾讯云软件源/Tencent Open Source Mirror Site)正式上线了,以下为相关介绍及使用说明. 腾讯开源镜像网站介绍 腾讯云软件源由腾讯云提供支持.搭建此开源镜 ...
- DevOps的介绍及常见的几种工具
一.DevOps的介绍 DevOps是Development和Operations的组合 可以把DevOps看作开发(软件工程).技术运营和质量保障(QA)三者的交集.传统的软件组织将开发.IT运营和 ...
- docker介绍说明,docker配置代理加速器、docker使用国内镜像仓库
文章目录 容器的介绍 了解容器 容器管理 配置docker代理[加速器] 说明 配置阿里云 配置docker加速器 使用国内镜像仓库 网易云 阿里云 容器的介绍 了解容器 下面这篇博客中清晰解释了何为 ...
- node python做游戏服务哪个适合做服务端_当前的几种开源游戏服务端介绍
当前的几种开源游戏服务端介绍 pomelo Pomelo 是基于 Node.js 的高性能.分布式游戏服务器框架.它包括基础的开发框架和相关的扩展组件(库和工具包),可以帮助你省去游戏开发枯燥中的重复 ...
- 显示器接口_选购电脑显示器最常见的几种接口介绍和应用场景
大多数的数码爱好者认识Type-C接口,估计都是从2015年的安卓手机开始的. 但估计不少用户不知道的是,电脑端的显示器上也有Type-C接口. 如果你是一个刚入门想买显示器的朋友,下面可以分别看看显 ...
最新文章
- RPA或成为日本大银行“瘦身”潮的催化剂
- python输出可执行文件_重定向-禁止在Python调用中输出可执行文件
- .NET Core 和 DevOps
- ik分词器 mysql php_php环境下使用elasticSearch+ik分词器进行全文搜索
- linux查看分区树形状态,查看Linux磁盘的分区状态(lsblk、blkid、parted)
- 微信改号?我用 Python 发现了六大隐藏秘密......
- 程序员专属段子集锦 4/10
- java出租车源码_基于WEB的JAVA出租车打车系统
- 模板引擎-1-基础概念和是使用小案例
- 文本界面听歌神器--moc
- apache php 无法读取网络邻居共享文件的处理,提权
- 域名如何转移?域名转移流程有哪些?
- xbee模块和单片机_什么是xbee模块?和zigbee模块有什么区别?
- 龙芯 LS2K 16G 内存支持
- Python生成自定义表头Excel
- luogu P2381 圆圆舞蹈
- CSS 基础3(内边距、外边距、边距模型)
- 服务器如何装系统和数据库,中软系统服务器及数据库安装规范(含维护).pdf
- html的浮动跟标准流,网页布局的 标准流 浮动流 与 定位流
- 云计算优势与风险并存 安全是首要问题
热门文章
- redis安装 linux make,linux下安装redis执行make的时候报错
- 从内外参到 Structure From Motion(SFM)
- 长沙建成全国首条支持自动驾驶的智慧高速
- fatal: unsafe repository Git权限问题修复
- 5. 找出每个学生超过他选修课程平均成绩的课程号。
- 砝码称重(第十二届蓝桥杯省赛第一场C++A/B/研究生组)
- 550什么意思_550是什么意思
- java监听鼠标右键_监听鼠标右键,打开一个菜单
- 什么是Bom?有哪些常用的Bom属性?
- 杰里之爬锡效果不理想【篇】