前言

接着上一篇文章关于基于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. .Net Core·寄托于IIS的REST服务405的问题

    阅文时长 | 0.48分钟 字数统计 | 828.8字符 主要内容 | 1.引言&背景 2.声明与参考资料 『.Net Core·寄托于IIS的REST服务405的问题』 编写人 | SCsc ...

  2. select 语句的基础语法

    授权语法sql 一.用户的创建与使用 在管理员登录后可创建用户 --创建qfplan用户-create user qfplan identified by qfplan; --用户基本权限授权gran ...

  3. 用nvm的方式安装node

    一.nvm简介 Node Version Manager(Node版本管理工具)由于以后的开发工作可能会在多个Node版本中测试,而且Node的版本也比较多,所以需要这么款工具来管理.   nvm的安 ...

  4. 单独跑ltp-20200508 ./runltp

    # cat r3.sh#!/bin/bash # cat r3.sh#!/bin/bashi=1for ((; i<=1000; i++))do/opt/ltp/runltp -s fmtmsg ...

  5. 企业案例-Mysql误删除用户表如何恢复

    1.不小心删除了mysql所有用户 mysql> delete from mysql.user where 1=1; Query OK, 5 rows affected (0.00 sec) # ...

  6. SSH远程主机秘钥失效的解决方法

    一.问题描述: 远程主机的SSH秘钥发生了变化,在使用SSH远程登录的时候,提示如下 [root@localhost ~]# ssh root@172.16.48.10 @@@@@@@@@@@@@@@ ...

  7. downloader middleware的三个methods不同返回的情况

    要激活一个meddleware, 要在设置里面添加.例如: DOWNLOADER_MIDDLEWARES = { 'myproject.middlewares.CustomDownloaderMidd ...

  8. FreeBSD 13.0 正式版发布,已经可以下载

    请访问原文链接:https://sysin.org/article/freebsd-13/,查看最新版.原创作品,转载请保留出处. 根据 FreeBSD 13.0 官方发布计划,4 月 9 日 13. ...

  9. python实现发送微信消息

    import json from threading import Timer from wxpy import * import requests import urllib.parse def g ...

  10. 书列荐书 |《黑天鹅&#183;如何应对不可预知的未来》【美】纳西姆 尼古拉斯 塔勒布 著

    你不知道的事比你知道的事更有意义,因为生活中发生了许多微小的事情,尽管出现的概率非常小,但是却以某一种巨大的力量影响我们的生活.但是由于思维习惯的问题,导致我们看问题的方式使得我们不能很快地把握事物的 ...