为什么使用 Nexus

Nexus 最为大家熟知的功能就是 maven 的依赖包管理器。其实 Nexus 的功能不仅仅是 maven 的包管理,它还可以做 .net 包管理,docker 镜像管理,甚至还可以做 yum 源。这篇文章主要介绍 Nexus 的 maven 依赖管理功能,介绍 Nexus 的安装,配置。

架设 Nexus 私服有以下优点:

  • 节省公司外网贷款;
  • 因为依赖会被缓存到私服上,所以依赖的下载速度会很快;
  • 方便上传团队内部的依赖,统一管理,共享。

Docker 模式安装 Nexus

我们选择使用 Docker 的方式安装 Nexus。

Nexus的官方网站:https://www.sonatype.com/products/repository-oss-download

Nexus的官方帮助文档:https://help.sonatype.com/repomanager3

Nexus的Docker安装介绍:https://help.sonatype.com/repomanager3/installation/installation-methods#InstallationMethods-InstallingwithDocker

官方有两种方式

  1. 使用 docker 的 data volume (推荐)
  2. 使用本地目录作为 container 的 volume

使用 data volume

docker volume create --name nexus-data
docker run -d -p 8081:8081 --name nexus -v nexus-data:/nexus-data sonatype/nexus3

使用本地目录

mkdir nexus
cd nexus
docker run -d -p 8081:8081 --name nexus -v $PWD/nexus-data:/nexus-data sonatype/nexus3

安装起来特别简单。

安装完毕,访问 127.0.0.1:8081,可以直接登陆。

Nexus 配置

关于怎么配置 Nexus 这边不做太详细的说明。对默认的几个仓库坐下说明。

默认情况下,Nexus 会帮我们创建几个仓库:

  • maven-central:代理仓库,一般会连接外部的中央仓库;
  • maven-public:仓库组,一般提供这个仓库给公司内部的同事使用;
  • maven-release:本地仓库,一般用于存放公司内部开发的Jar包;
  • maven-snapshots:本地仓库,存放公司开发的snapshot版本的包;
  • maven-3rd-party:本地仓库,存放第三方的Jar包。

配置 Blob Stores

Nexus 使用

包下载

如果你只需要使用包下载功能,只需要替换本地的settings.xml即可。

<settings>
<localRepository>D:\software\maven\Repository</localRepository>
<proxies></proxies>
<servers>
<server>
<id>nexus</id>
<username>devops</username>
<password>password</password>
</server>
</servers>
<mirrors>
<mirror>
<id>nexus</id>
<mirrorOf>nexus</mirrorOf>
<url>http://xx.xx.xx.xx:18081/repository/maven2-public/</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>nexus</id>
<repositories>
<repository>
<id>nexus</id>
<url>http://nexus</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<url>http://nexus</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>nexus</activeProfile>
</activeProfiles>
</settings>

包上传

方法一:通过 Nexus 界面上传

给用户开通上传Jar包的权限。用户就可以通过页面上传Jar包了。

方法二:通过配置pom文件进行Jar包上传

参考

Nexus 安装配置教程的更多相关文章

  1. QT开发环境安装配置教程

    QT开发环境安装配置教程 分类: QT2012-11-29 23:31 35366人阅读 评论(12) 收藏 举报 Linux版的直接在ubutnu软件中心输入QT,安装响应的Designer,Cre ...

  2. 2018超详细sublime text3+python3.x安装配置教程(附常用插件安装教程)

    导读 本文是关于2018年7月最新版sublime text3+pythin3.x下载及安装配置教程,sublime text3版本为3176,python版本为3.7,安装环境是基于windows1 ...

  3. centos7命令行和图形界面的相互切换(附centos7安装配置教程)

    一.最近安装了centos7,发现在命令行和图形界面的相互切换命令上,与centos以往版本有很大不同,先整理如下,加深记忆. 1,centos7默认安装后,跟其他版本一样,启动默认进入图形界面: 2 ...

  4. MySQL基础环境_安装配置教程(Windows7 64或Centos7.2 64、MySQL5.7)

    MySQL基础环境_安装配置教程(Windows7 64或Centos7.2 64.MySQL5.7) 安装包版本 1)     VMawre-workstation版本包 地址: https://m ...

  5. Windows基础环境_安装配置教程(Windows7 64、JDK1.8、Android SDK23.0、TortoiseSVN 1.9.5)

    Windows基础环境_安装配置教程(Windows7 64.JDK1.8.Android SDK23.0.TortoiseSVN 1.9.5) 安装包版本 1)     JDK版本包 地址: htt ...

  6. Linux基础环境_安装配置教程(CentOS7.2 64、JDK1.8、Tomcat8)

    Linux基础环境_安装配置教程 (CentOS7.2 64.JDK1.8.Tomcat8) 安装包版本 1)     VMawre-workstation版本包 地址: https://my.vmw ...

  7. Windows上PostgreSQL安装配置教程

    Windows上PostgreSQL安装配置教程 这篇文章主要为大家详细介绍了Windows上PostgreSQL安装配置教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 PostgreSQL的 ...

  8. JDK下载安装配置教程(详细)

    JDK下载安装配置教程(详细) 版权声明:本文为原创文章,转载请附上原文出处链接和本声明.https://www.cnblogs.com/mxxbc/p/11844885.html 因为最近需要在Wi ...

  9. 【Jmeter】Jmeter安装配置教程

    jmeter安装配置教程 1.安装jdk,配置环境变量 进入官网,https://www.oracle.com/downloads/index.html#java,选择 Java (JDK) for ...

随机推荐

  1. 匿名函数lambda / map()方法

    lambda一般配合其他方法使用,一般使用在只用过一次就不用的函数,那就没必要特意去定义 lambda能支持的最复杂的语句就是三元运算 例如: lambda x,y: x*y if x < y ...

  2. 白日梦的MySQL专题(第33篇):各种登陆MySQL的骚操作

    阅读原文 系列文章公众号首发,点击阅读原文 前置知识 我们想登陆到mysql中前提是肯定需要一个用户名和密码:比如 mysql -uroot -proot 在mysql中用户的信息会存放在 mysql ...

  3. 最全的cURL命令使用

    cURL是什么 curl是Linux命令行工具,可以使用任何可支持的协议(如HTTP.FTP.IMAP.POP3.SCP.SFTP.SMTP.TFTP.TELNET.LDAP或FILE)在服务器之间传 ...

  4. 常用的HTML标记

    一.格式标记 1.<br> <br>是一个单标记,用来强制换行. 2.<p> <p>是双标记.用来换分段落. 3.<center> < ...

  5. JDK、JRE 和 JVM 的区别

    JDK JDK 是 Java Development Kit 的缩写,JDK 是 Java 语言的软件开发工具包( SDK ).它提供了Java 开发.编译.运行需要的文件和环境. 如果你是 Java ...

  6. Linux中级之windows下使用curl命令(cmd命令行)

    在官网下载工具包:http://curl.haxx.se/download.html(根据自己电脑系统位数选择) 使用方式一:在curl.exe目录中使用 解压下载后的压缩文件,通过cmd命令进入到c ...

  7. 3.14-19 wc、iconv、dos2unix、diff、vimdiff、rev

    3.14 wc:统计文件的行数.单词数或字节数 wc命令用于统计文件的行数.单词数或字节数.   -c 统计字节数 -w 统计单词数 -l 统计行数     -L 打印最长行的长度 -m 统计字符数 ...

  8. Linux 系统日志和系统信息常用命令介绍

    日志文件 日 志 文 件 说 明 /var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一 /var/log/secure 与安全相关的日志信息 / ...

  9. easyui datagrid 自定义单元格单击与双击事件(Day_38)

    $(function(){ $('#tableId').datagrid({//单击事件   onClickRow:function(rowIndex,rowData){  alert("单 ...

  10. 并发王者课-青铜7:顺藤摸瓜-如何从synchronized中的锁认识Monitor

    在前面的文章中,我们已经体验过synchronized的用法,并对锁的概念和原理做了简单的介绍.然而,你可能已经察觉到,有一个概念似乎总是和synchronized.锁这两个概念如影相随,很多人也比较 ...