Nexus 3.x 可以创建三种docker仓库:
docker (hosted) 托管仓库 ,私有仓库,可以push和pull
docker (proxy) 代理和缓存远程仓库 ,只能pull
docker (group) 将多个proxy和hosted仓库添加到一个组,只访问一个组地址即可,只能pull
测试图
一、创建docker(hosted)仓库
二、创建docker(proxy)仓库
当PC访问中央库的时候,先通过 Proxy 下载到 Nexus 仓库,然后再从 Nexus 仓库下载到 PC 本地。
只要其中一个人从中央库下来了,以后大家都是从 Nexus 私服上进行下来,私服一般部署在内网,这样大大节约的宽带。
docker (proxy)主要配置项如下:
Connectors-https:10010 //自定义端口
Enable Docker V1 API: true //勾选复选框
Remote Storage:https://registry-1.docker.io//选择dockerhub地址,也可以是其他docker仓库
Docker Index :Use Docker Hub
Blob store:default
docker (proxy)搜索和下载docker镜像测试
# docker login ${NEXUS_IP_ADDRESS}:10010
# docker search ${NEXUS_IP_ADDRESS}:10010/hello-world
# docker pull ${NEXUS_IP_ADDRESS}:10010/hello-world
一个镜像,拉一次,就会缓存在proxy仓库,别人在再拉同一个镜像,就直接从proxy仓库中拉取,大大降低中央仓库的负荷, 节省外网带宽和时间!
三、创建docker(group)仓库
docker (group)主要配置项如下:
Connectors-https:10011 //自定义端口
Enable Docker V1 API: trun //勾选复选框
Blob store:default
Member reposltorles: //在Member里添加创建的proxy和hosted仓库
docker (group)搜索和下载docker镜像测试
# docker login ${NEXUS_IP_ADDRESS}:10011
# docker search ${NEXUS_IP_ADDRESS}:10011/hello-world
# docker pull ${NEXUS_IP_ADDRESS}:10011/hello-world
官方推荐配置两个Connectors端口,一个配置在docker(group)用来访问所有库,搜索和下载images(group下包含proxy,所以创建proxy仓库的时候可以不设置Connectors-https端口),另一个配置在docker(hosted)用来push自己的images,使用docker(group)实现搜索和下载images。
The recommended minimal configuration requires one port for a Docker repository group used for read access to all repositories and one port for each hosted Docker repository that will receive push events from your users.
参考
Centos7 搭建最新 Nexus3 Maven 私服
http://www.54tianzhisheng.cn/2017/10/14/Nexus3-Maven/
http://blog.codecp.org/2016/05/23/Nexus%20oss%203.0%20%E6%9E%84%E5%BB%BAdock
网友评论