前言

接着上一篇文章关于基于Nexus3和Docker搭建私有Nuget服务的探索,我们可以进一步利用Nexus3来创建一个私有的Docker镜像库满足内部需求。

仓库类型

  • hosted: 本地存储,即同docker官方仓库一样提供本地私服功能。
  • proxy: 提供代理其他仓库的类型,如docker中央仓库。
  • group: 组类型,实质作用是组合多个仓库为一个地址。

仓库存储

先为Docker Mirrors新建一个用来存储镜像的存储位置。

在Administration菜单中RespositoryBlob Stores子菜单中,点击Create blob store按钮,填写表单新建一个Blob空间。

创建本地私有仓库

在Administration菜单中RespositoryRespositories子菜单中,点击Create respository按钮,填写表单新建一个类型docker(hosted)的仓库。

在表单中,在Repository ConnectorsHTTP或者HTTPS项中需要填写容器对外暴露端口,并且最好勾选下Enable Docker V1 API复选框。

注意:因为后面登录这个镜像库的时候,上下文的路径只能是根目录,所以这里我们需要使用创建容器时预留的端口号进行仓库连接绑定。

在表单中,选中刚创建的Blob空间作为Blob Store

创建成功之后,点击仓库详情,即可看到这个仓库的地址。

如果要登陆该仓库,地址就是localhost:8082

创建远程代理仓库

在Administration菜单中RespositoryRespositories子菜单中,点击Create respository按钮,填写表单新建一个类型docker(proxy)的仓库。

在表单中,填写要代理的远程仓库地址,比如https://registry-1.docker.io

还可以点击View Certificate,还可以勾选Use the Nexus truststore,选中刚创建的Blob空间作为Blob Store。

创建成功之后,点击仓库详情,即可看到这个仓库的地址。

创建本地和远程共存的仓库

在Administration菜单中RespositoryRespositories子菜单中,点击Create respository按钮,填写表单新建一个类型docker(group)的仓库。

在表单中,在Repository ConnectorsHTTP或者HTTPS项中需要填写容器对外暴露端口,并且最好勾选下Enable Docker V1 API复选框。

在表单中,选中刚创建的Blob空间作为Blob Store

在表单中,在左侧的Member Resositories成员仓库选择之前创建的hosted类型和proxy类型的仓库,添加到右侧列表中,再点击创建。

如果要登陆该仓库,地址就是localhost:8082

拉取私有镜像

测试从组仓库拉取,如果仓库中没有缓存,它将从代理仓库的源镜像去拉,如果仓库中有缓存,它将直接从本地存储下发,速度会变得很快。

docker pull localhost:8083/$imageName:$tag

推送本地镜像

测试推送本地镜像到私有仓库中。

先把本地镜像打一个私有仓库的镜像分支版本出来

docker tag $sourceImage:$tag $targetImage:$tag

推送本地镜像Tag到私有仓库

docker push $targetImage:$tag

注意:docker(group)类型的仓库是只能拉取不能推送的,这里切记!如果需要推送,应该登录并推送到docker(hosted)的仓库。

参考资料

温故知新,基于Nexus3和Docker搭建私有Docker Mirrors镜像库的更多相关文章

  1. docker 搭建私有 docker hub

    查找registry 镜像 meiya@meiya:/etc/docker$ clear meiya@meiya:/etc/docker$ docker search registry NAME DE ...

  2. 搭建私有Docker Registry

    Docker官方提供了用于搭建私有registry的镜像,并配有详细文档. 官方Registry镜像:https://hub.docker.com/_/registry 官方文档:https://do ...

  3. Docker 搭建私有仓库

    Docker 搭建私有仓库 环境: docker 版本 :18.09.1 主机地址:192.168.1.79 1.运行并创建私有仓库 docker run -d \ -v /opt/registry: ...

  4. 菜鸟系列docker——搭建私有仓库harbor(6)

    docker 搭建私有仓库harbor 1. 准备条件 安装docker sudo yum update sudo yum install -y yum-utils device-mapper-per ...

  5. [Docker]docker搭建私有仓库(ssl、身份认证)

    docker搭建私有仓库(ssl.身份认证) 环境:CentOS 7.Docker 1.13.1 CentOS 7相关: https://www.cnblogs.com/ttkl/p/11041124 ...

  6. docker 搭建私有云仓库

    docker搭建私有仓库   registry私有仓库 下载docker-distribution软件包 yum install epel-release yum install docker-dis ...

  7. [转] 使用HTTPS在Nexus Repository Manager 3.0上搭建私有Docker仓库

    FROM: https://www.hifreud.com/2018/06/06/03-nexus-docker-repository-with-ssl/ 搭建方式 搭建SSL的Nexus官方提供两种 ...

  8. Docker搭建私有仓库

    1,下载仓库镜像. docker pull  registry    //主要用于搭建私有仓库的. 2,将宿主机端口映射到容器中去,容器的5000端口是不能更改的. docker run -d -p ...

  9. 使用 Nexus Repository Manager 搭建私有docker仓库

    使用容器安装Nexus3 1.下载nexus3的镜像: docker pull sonatype/nexus3 2.使用镜像启动一个容器: docker run -d --name nexus  -- ...

随机推荐

  1. [刷题] PTA 7-32 说反话-加强版

    题目描述: 给定一个英语句子,各个单词之间用空格分隔.要求编写程序,将所有单词倒序输出 输入示例: Hello World Here I Come 输出示例: Come I Here World He ...

  2. netperf对比

    netperf -H 10.1.60.141 -t TCP_STREAM -l 60  -p 10082 netperf -H 10.1.60.141 -t UDP_STREAM -l 60  -p ...

  3. 【转载】linux 安装 中文输入法 Fcitx 手动

    在 Linux(测试版)中安装中文输入法 由于一些原因,目前在 Linux(测试版)中无法调用系统的输入法,故需要安装第三方输入法为 Linux(测试版)中的应用提供中文输入支持.本文档旨在介绍第三方 ...

  4. 【转载】geany linux python编译器 开源

    http://www.dekiru.cn/?p=1491 Geany 不好用,建议用一些好用的编辑器或ide Subliem Text 或 VS code Pycharm等. 设置运行环境 菜单栏–生 ...

  5. 单用户模式修改root密码

    单用户模式修改root密码 1.进入引导菜单界面2.按e进入grub,在linux或linux16那行结尾加上 rw init=/bin/bash,按Ctrl+x或F103.进入bash-4.3# , ...

  6. mysql 配置文件概述

    mysql 配置文件概述 mysql 配置文件 mysql 的配置文件为 /etc/my.cnf 配置文件查找次序:若在多个配置文件中均有设定,则最后找到的最终生效 /etc/my.cnf --> ...

  7. sizeof()用法汇总-(转自风雷)

    sizeof()功能:计算数据空间的字节数 1.与strlen()比较       strlen()计算字符数组的字符数,以"\0"为结束判断,不计算为'\0'的数组元素.     ...

  8. Linux信号(signal) 机制分析-(转自h13)

    [摘要]本文分析了Linux内核对于信号的实现机制和应用层的相关处理.首先介绍了软中断信号的本质及信号的两种不同分类方法尤其是不可靠信号的原理.接着分析了内核对于信号的处理流程包括信号的触发/注册/执 ...

  9. 关于typedef的用法总结-(转自Bigcoder)

    不管实在C还是C++代码中,typedef这个词都不少见,当然出现频率较高的还是在C代码中.typedef与#define有些相似,但更多的是不同,特别是在一些复杂的用法上,就完全不同了,看了网上一些 ...

  10. Centos7 搭建vsftpd

    1.安装vsftpd 在线安装:yum -y install vsftpd 离线安装:下载vsftp的rpm包,通过rpm -ivh xxx.rpm安装 2.修改/etc/vsftpd/vsftpd. ...