目录

Docker搭建Nexus私有仓库... 1

一、安装部署... 1

1、安装... 2

2、访问网页端... 2

二、配置使用... 2

1、创建本地仓库... 2

2、docker配置... 3

3、上传、拉取镜像... 4

4、上传、拉取镜像... 4

5、权限管理... 5

Docker搭建Nexus私有仓库

Nexus3是Sonatype提供的仓库管理平台,Nuexus Repository OSS3能够支持Maven、npm、Docker、YUM、Helm等格式数据的存储和发布;并且能够与Jekins、SonaQube和Eclipse等工具进行集成。Nexus3支持作为宿主和代理存储库的Docker存储库,可以直接将这些存储库暴露给客户端工具;也可以以存储库组的方式暴露给客户端工具,存储库组是合并了多个存储库的内容的存储库,能够通过一个URL将多个存储库暴露给客户端工具,从而便于用户的使用。通过nexus3自建能够有效减少访问获取镜像的时间和对带宽使用,并能够通过自有的镜像仓库共享企业自己的镜像。在本文中,采用Docker方式安装部署Nexus3。
注意:目前的版本有2.x和 3.x ,3.x的支持范围更广,支持ruby和docker。如果单纯的maven私服,建议使用2.x

一、安装部署

1、安装nexus

[root@localhost ~]# docker run -d --user root -p
8081:8081 -p 8082:8082 -p 8083:8083 -p 8084:8084 -v /opt/nexus-data:/nexus-data
--name nexus3 sonatype/nexus3:3.14.0

#映射端口对应的用途:

8081:可以通过http访问nexus应用

8082:docker(hosted)私有仓库,可以pull和push

8083:docker(proxy)代理远程仓库,只能pull

8084:docker(group)私有仓库和代理的组,只能pull

#使用参数 -v 建立宿主机与Docker目录映射关系,/nexus-data:docker里存nexus数据目录,所以将数据目录存放到宿主机/opt/nexus-data

2、访问网页端

http://192.168.100.163:8081
默认账号密码: admin/admin123

二、创建私有镜像仓库

1、repository的类型

  • hosted,本地仓库,通常我们会部署自己的构件到这一类型的仓库。比如公司的第二方库。
  • proxy,代理仓库,它们被用来代理远程的公共仓库,如maven中央仓库。
  • group,仓库组,用来合并多个hosted/proxy仓库,当你的项目希望在多个repository使用资源时就不需要多次引用了,只需要引用一个group即可。

2、创建 docker(hosted) 类型的仓库

在创建镜像仓库的页面中,设置镜像仓库的相关信息,包括名称、HTTP端口、是否允许匿名拉取镜像等信息。这里需要注意的是,此处的HTTP端口(此处的值为8082)很重要,后续拉取和推送进行是使用此端口进行的,而不是nexus本身对外暴露的端口。

3、修改docker配置

在/etc/docker/daemon.json文件中添加下面的内容:

[root@localhost ~]# cat /etc/docker/daemon.json

{

"insecure-registries":["192.168.100.163:8082"]

}

[root@localhost
~]# systemctl daemon-reload

[root@localhost
~]# systemctl restart docker

[root@localhost ~]# docker info

Insecure
Registries:

192.168.100.163:8082  #生效了

127.0.0.0/8

4、上传、拉取镜像

[root@localhost ~]# docker login 192.168.100.163:8082

Username: admin

Password: admin123

WARNING! Your password will be stored unencrypted in
/root/.docker/config.json.

Configure a credential helper to remove this warning. See

https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded  #登录成功

注意:登录时,需要提供用户名和密码。认证的信息会被保存在~/.docker/config.json文件,在后续与私有镜像仓库交互时就可以被重用,而不需要每次都进行登录认证。

[root@localhost ~]# docker pull hello-world

[root@localhost ~]# docker tag hello-world
192.168.100.163:8082/helloworld:1.0

[root@localhost ~]# docker push 192.168.100.163:8082/helloworld:1.0

[root@localhost ~]# docker pull 192.168.100.163:8082/helloworld:1.0
 #拉取镜像

1.0: Pulling from helloworld

1b930d010525: Pull complete

Digest:
sha256:92c7f9c92844bbbb5d0a101b22f7c2a7949e40f8ea90c8b3bc396879d95e899a

Status: Downloaded newer image for
192.168.100.163:8082/helloworld:1.0

192.168.100.163:8082/helloworld:1.0

5、权限管理

创建用户:

默认是使用admin登录的,权限太高,可以给用户单独创建账号

建立 docker 角色组,权限为 nx-repository-view-docker-*-*

建立新用户,并加入为 docker角色组

登录

部署Nexus作为docker的私有仓库的更多相关文章

  1. Docker Harbor私有仓库部署与管理 (超详细配图)

    Docker Harbor私有仓库部署与管理 1.Harbor 介绍 2.Harbor部署 3.Harbor管理 1.Harbor 介绍: 什么是 Harbor ? Harbor 是 VMware 公 ...

  2. Docker 搭建私有仓库

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

  3. Python Docker 查看私有仓库镜像【转】

    文章来源:python Docker 查看私有仓库镜像 pip 安装: # 首先安装epel扩展源: yum -y install epel-release # 更新完成之后,就可安装pip: yum ...

  4. Docker registry 私有仓库镜像查询、删除、上传、下载 shell

    #Docker官方私有仓库registry #官方只提供了API接口,不方便使用,就写了个shell #docker-registry安装配置http://www.cnblogs.com/elvi/p ...

  5. Docker本地私有仓库实战

    Docker仓库主要用于存放Docker镜像,Docker仓库分为公共仓库和私有仓库,基于registry可以搭建本地私有仓库,使用私有仓库的优点如下: 1)节省网络带宽,针对于每个镜像不用去Dock ...

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

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

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

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

  8. 使用nexus搭建一个maven私有仓库

    使用nexus搭建一个maven私有仓库 大家好,我是程序员田同学.今天带大家搭建一个maven私有仓库. 很多公司都是搭建自己的Maven私有仓库,今天就带大家使用nexus搭建一个自己的私有仓库, ...

  9. docker registry私有仓库部署

    私有仓库服务端:12.40[root@centos7_golang ~]# docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry ...

随机推荐

  1. Spring整合Spring-data-jpa项目所遇到的坑

    1.异常信息: 错误原因:缺少spring-aop包 解决: <dependency> <groupId>org.springframework</groupId> ...

  2. Informatica9.5.1配置域名错误(ICMD_10033,INFASETUP_10002,RSVCSHARED_00021)

    错误信息: OutPut : [ICMD_10033] Command [defineDomain] failed with error [[INFASETUP_10002] Cannot creat ...

  3. SSH(一)

    系统程序架构:    整合思路        1.逆依赖方向而行,由Spring提供对象管理和服务        2.依次实现Spring与Hibernate.Spring与Struts2的集成 配置 ...

  4. MOTS:多目标跟踪和分割论文翻译

    MOTS:多目标跟踪和分割论文翻译 摘要: 本文将目前流行的多目标跟踪技术扩展到多目标跟踪与分割技术(MOTS).为了实现这个目标,我们使用半自动化的标注为两个现有的跟踪数据集创建了密集的像素级标注. ...

  5. Windows API 教程(九) 网络编程

    茵蒂克丝 基础概念 ip 地址 服务端与客户端 Socket 基础概念 头文件和库文件 常用函数 WSAStartup ( ) 函数 WSACleanup ( ) 函数 Socket ( ) 函数 c ...

  6. FPGA基础知识关键点摘要

    FPGA基础知识关键点摘要 一.组合逻辑和时序逻辑的区别:组合逻辑与输入直接实时相关,时序逻辑还必须在时钟上升沿出发后输出新值,有没有时钟输入是他们最大的区别!组合时序容易出现竞争冒险现象出现亚稳态, ...

  7. web开发发展历程

    cs架构:(软件主要运行在桌面上,数据库软件运行在服务器端) 缺点:如果web应用修改或升级,需要每个客户端逐个升级桌面App,因此Browser/server模式开始流行. bs架构:应用程序的逻辑 ...

  8. Codeforces_816

    A.不断增加时间,直到符合要求. #include<bits/stdc++.h> using namespace std; int a,b; char c; int f(int x) { ...

  9. mybatis缓存问题导致无法查询到数据

    今天查询记录时,发现重复查询结果时出现空记录的情况 查看控制台信息,只有红色框选部分有进行查询数据,而其他没有.然而上图可看出有两条数据是能展现出来的,故有可能是mybatis缓存命中的. 因此在ma ...

  10. step1:准备歌词之《前端开发是个啥》

    以下是给大家介绍前端开发的填词,曲子是李圣杰的<最近>,大家喜欢可以试试唱. 点赞关注超过100的平台,我后续上来发本人原唱视频(目前正在练习中...),另外大家觉得哪些词写得不好的,欢迎 ...