1,安装nexus3。

这个地方略了,安装部署可以参考:nexus3安装配置。

2,配置走起。

1,创建blob存储。

登陆之后,先创建一个用于存储镜像的空间。

定义一个name,下边的内容会自动补全。

然后保存。

这里因为我用的测试服务器演示,因此存储没有那么大,实际生产中使用,建议服务器存储500G或以上。

2,创建一个hosted类型的docker仓库。

Hosted类型仓库用作我们的私有仓库,替代harbor的功能。

点击步骤如下:

而后可见:

所支持种类之丰富,可见一斑。

这里我们看到docker类型有三种:

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

我们先来创建一个hosted类型的私有仓库。

点击 Repository下面的 Repositories – Create repository – docker(hosted) :

  • Name: 定义一个名称docker-local
  • Online: 勾选。这个开关可以设置这个Docker repo是在线还是离线。
  • Repository Connectors
      下面包含HTTP和HTTPS两种类型的port。
      有什么用呢?说明讲得很清楚:

连接器允许docker客户端直接连接到docker仓库,并实现一些请求操作,如docker pull, docker push, API查询等。但这个连接器并不是一定需要配置的,尤其是我们后面会用group类型的docker仓库来聚合它。

我们把HTTP这里勾选上,然后设置端口为8083。

  • Force basic authentication
  • 勾选。这样的话就不允许匿名访问了,执行docker pull或 docker push之前,都要先登录:docker login

  • Docker Registry API Support
    Docker registry默认使用的是API v2, 但是为了兼容性,我们可以勾选启用API v1。

  • Storage
  • Blob store:我们下拉选择前面创建好的专用blob:idocker-hub。
  • Hosted
    开发环境,我们运行重复发布,因此Delpoyment policy 我们选择Allow redeploy。

整体配置截图如下:

3,创建一个proxy类型的docker仓库。

proxy类型仓库,可以帮助我们访问不能直接到达的网络,如另一个私有仓库,或者国外的公共仓库,如官方的dockerhub镜像库。

创建一个proxy类型的仓库

  • Name: proxy-docker-hub
  • Repository Connectors: 不设置。
  • Proxy

Remote Storage

      : docker hub的proxy,这里填写:

https://registry-1.docker.io

      这个是官方默认的一个链接,我这里配置使用

DaoCloud

      的容器加速:

http://f1361db2.m.daocloud.io

  • Docker Index: Use Docker Hub
  • Storage:idocker-hub

整体配置截图如下:

4,创建一个group类型的docker仓库。

group类型的docker仓库,是一个聚合类型的仓库。它可以将前面我们创建的3个仓库聚合成一个URL对外提供服务,可以屏蔽后端的差异性,实现类似透明代理的功能。
  • name:docker-group
  • Repository Connectors:启用了一个监听在8082端口的http连接器;
  • Storage:选择专用的blob存储idocker-hub。
  • group : 将左边可选的3个仓库,添加到右边的members下。

整体配置截图如下:

到这儿,nexus3的配置算是完成了,接下来就是使用方面的事情了。

3,小插曲。

大家也看到了上边的截图都是比较长的,这几张图来的并不容易。在获取这些图的过程中,我尝试过自己御用的截图工具,也尝试过Chrome的网页截图,还尝试过其他的各种截图工具,无论是截全屏,还是滚动截图,无所不用其极,却无一能够截出令自己满意的图,哎,都是完美主义(强迫症)做的怪,于是,趁着公司已经夜深无人,我最终通过如下方式截到了心仪的长图。

不为别的,只为把所分享的东西做的足够精致。当然,各位观众朋友如果有更好的截图工具,并且在nexus3这个界面里截出了像我截的那么长的图的话,欢迎在评论区留言分享。

4,常规方式使用。

请注意,这种方式经我测试,总是失败,原因还没查出来。如果有人知道原因是什么,麻烦留言区告知一下。

1,配置

配置/etc/docker/daemon.json, 由于不是https,所以要在daemon.json中配置一下:

  1. { "insecure-registries":["192.168.157.110:8082"] }

2,重启docker。

  1. $systemctl daemon-reload
  2. $systemctl restart docker

3,pull镜像。

  1. docker pull redis

4,登陆私服。

  1. docker login -u admin -p admin123 192.168.157.110:8082

5,打标签。

  1. docker tag docker.io/redis 192.168.157.110:8082/redis

6,push镜像。

  1. [root@docker ~]$docker push 192.168.157.110:8082/redis
  2. 然后报错:
  3. The push refers to a repository [192.168.157.110:8082/redis]
  4. 902afb26cfff: Layer already exists
  5. 21497520b817: Layer already exists
  6. a3514b4102be: Layer already exists
  7. 714e32c05337: Layer already exists
  8. d98fb630fb3b: Layer already exists
  9. 8b15606a9e3e: Layer already exists
  10. error parsing HTTP 404 response body: unexpected end of JSON input: ""

暂时不知这个报错问题的原因是什么,因为最终没有采用这种方式,所以没有深入探究。

5,nginx代理方式。

以下内容参考张戈博客,中有删改。

在部署 Nginx 部分,我们先需要生成自签名 SSL 证书,因为后面不想在 docker pull 的时候还要带一个端口!这里我们需要 2 个域名,一个用来展示 nexus 前台,另一个用做 docker 仓库,比如:

  • nexus 前台:repo.ald.com
  • docker 仓库:idocker.io

1,安装nginx。

先通过curl 192.168.106.10/a | sh安装nginx。

2,生成证书。

生成自签名 SSL 证书的方法网上很多,这里推荐一个一键生成工具,大家可以尝试使用:

<二>企业级开源仓库nexus3实战应用–使用nexus3配置docker私有仓库的更多相关文章

  1. 2.使用nexus3配置docker私有仓库

    1,配置走起 1,创建blob存储 登陆之后,先创建一个用于存储镜像的空间. 定义一个name,下边的内容会自动补全. 然后保存. 注意:实际生产中使用,建议服务器存储500G或以上. 2,创建一个h ...

  2. Windows安装Docker & Docker-Compose & 配置docker私有仓库

    一定要给windows先创建软连接,不然系统盘会爆表的: mklink /j .docker D:\Administrator\.docker Win7安装Docker Dockerfile # FR ...

  3. nexus3使用docker运行/创建docker私有仓库/maven私有仓库

    version: '3.2' services: nexus3: container_name: nexus3 hostname: nexus3 image: sonatype/nexus3:3.14 ...

  4. Docker私有仓库与Harbor部署使用

    Docker私有仓库与Harbor部署使用 目录 Docker私有仓库与Harbor部署使用 一.本地私有仓库 1. 下载registry镜像 2. 在daemon.json文件中添加私有镜像仓库地址 ...

  5. 使用Nexus配置Maven私有仓库

    使用Nexus配置Maven私有仓库 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.安装配置Nexus 1>.下载nexus 下载地址:https://www.sonat ...

  6. Centos7基于容器安装运行Docker私有仓库及添加认证

    一.前言 官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.但是,有时候,我们的使用场景需要我们拥有一个私有的镜像仓库用于管理 ...

  7. 构建Docker私有仓库

    一.Docker私有仓库   上一篇说了如何利用Dockerfile在已有镜像的基础上构建自己的镜像,那么如果需要让镜像在一个团队中使用,就需要一个仓库,有几种方式可以共享私有镜像. 1.将镜像上传至 ...

  8. 转载:教你分分钟搞定Docker私有仓库Registry

    一.什么是Docker私有仓库Registry 官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.但是,有时候我们的服务器无法 ...

  9. Docker 私有仓库建立(加密和用户验证)

    (一)生成证书1.mkdir /certs2.cd /certs 3.生成自签名证书 sudo openssl req -newkey rsa:2048 -new -nodes -x509 -days ...

随机推荐

  1. Linux 中磁盘阵列RAID10配置

    首先,了解一下RAID是什么?(百度所得) 独立磁盘冗余阵列(RAID,redundant array of independent disks)是把相同的数据存储在多个硬盘的不同的地方(因此,冗余地 ...

  2. Chinese word segment based on character representation learning 论文笔记

    论文名和编号 摘要/引言 相关背景和工作 论文方法/模型 实验(数据集)及 分析(一些具体数据) 未来工作/不足 是否有源码 问题 原因 解决思路 优势 基于表示学习的中文分词 编号:1001-908 ...

  3. 聚类——GMM

    聚类——认识GMM算法 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 一.GMM概述 二.GMM算法步骤 三.具体推导参考文献 1. 李航. 统计学习 ...

  4. Vue项目分环境打包的实现步骤

    转:https://blog.csdn.net/xinzi11243094/article/details/80521878 方法一:亲测真的有效 在项目开发中,我们的项目一般分为开发版.测试版.Pr ...

  5. linux命令之:yum

    yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...

  6. ElasticSearch(九):elasticsearch-head插件安装

    安装node 安装elasticsearch-head需要node.js的支持. 下载最新的node.js,下载地址:https://nodejs.org/en/download/ 将下载后的安装包放 ...

  7. day18-网络编程基础(一)

    勿骄勿燥,还是要定下心学习,还有有些没定下心 1.基础知识 2.tcp与udp协议 3.网络套接字 4.基于c/s结构的服务器客户端的实验 开始今日份总结 1.基础知识 现有的软件,绝大多数是基于C/ ...

  8. WiFi其他方法和WiFi事件响

    https://blog.csdn.net/Naisu_kun/article/details/86079455 目的WiFi在使用过程中并非会一直如希望般稳定运行的,为了应对这些情况就需要能够了解W ...

  9. ExcelDna项目完整工程演示及讲解

    原始链接:http://www.cnblogs.com/Charltsing/p/ExcelDnaDemo.html ExcelDna工程演示讲课内容 1.ExcelDna是啥? 2.ExcelDna ...

  10. 数据库优化-mysql中INNODB和MYIASM引擎的区别

    Innodb引擎 Innodb引擎提供了对数据库ACID事务的支持,并且实现了SQL标准的四种隔离级别. 该引擎还提供了行级锁和外键约束,它的设计目标是处理大容量数据库系统,它本身其实就是基于MySQ ...