一、SVN介绍

1.什么是SVN

svn(subversion)是版本管理工具,与CVS管理工具一样,SVN是一个跨平台的开源版本控制系统。svn版本管理工具管理着时间改变的各种数据。这些数据放置在一个中央资料档案库(repository)中,这个档案库很像一个普通的文件服务器或者FTP服务器,但是,与其他服务器不同的是,svn会备份并记录每个文件每一次的修改更新变动。这样我们就可以把任意一个时间点的档案恢复到想要的某一个旧的版本,当然也可以直接浏览指定文件的更新历史记录。

svn

OCSP是更轻量级的,因为它一次只获取一条记录。但是副作用是,当连接到服务器的时候,OCSP请求必须发送到第三方响应者,这增加了延迟,以及失败的可能。实际上,OCSP响应者由CA操控,由于它常常不可靠,导致浏览器由于收不到适时的响应而失败。这减少了安全性,因为它允许攻击者对OCSP响应者进行DoS攻击来取消验证。

使用nexus3.x配置docker镜像仓库及仓库代理

前言

我们一直使用 docker registry 作为docker的镜像仓库,但docker registry只能作为私有仓库,当需要Docker Hub 或 Google Cloud Containers 上的镜像时,我们只能自己手动pull,重新打tag,再push到docker registry上。

当需要拉取多个镜像时,这样相当麻烦,尤其是我们使用Kubespray来部署Kubernetes集群,仅仅准备镜像就需要花费很多时间。

我们希望有一个Docker仓库,能同时托管私有镜像,还能代理访问公共的镜像仓库。

正好我们在使用Nexus作为Maven的仓库,同时nexus3提供了Docker, yum, apt, npm, ruby gems, pypi 等诸多类型的仓库功能。

经过技术调研,Nexus3完全可以达到我们的预期。

Nexus3

Nexus介绍

Nexus是一个强大的仓库管理器,它极大地简化了本地内部仓库的维护和外部仓库的访问。

Nexus在代理远程仓库的同时维护本地仓库,以降低中央仓库的负荷,节省外网带宽和时间,Nexus私服就可以满足这样的需要。

Nexus是一套“开箱即用”的系统不需要数据库,它使用文件系统加Lucene来组织数据。

Nexus使用ExtJS来开发界面,利用Restlet来提供完整的REST APIs,通过m2eclipse与Eclipse集成使用。

Nexus支持WebDAV与LDAP安全身份认证。

Nexus还提供了强大的仓库管理功能,构件搜索功能,它基于REST,友好的UI是一个extjs的REST客户端,它占用较少的内存,基于简单文件系统而非数据库。