搭建maven私有仓库

1. 准备一台Linux机器

2. 安装nexus

2.1 本机安装

2.2 docker安装nexus

2.2.1 搜索docker镜像

Docker search nexus

搭建maven私有仓库_第1张图片

2.2.2 拉取镜像

docker pull docker.io/sonatype/nexus3

在这里插入图片描述

2.2.3 创建挂载目录

mkdir -p /usr/local/nexus3/nexus-data
chown -R 200 /usr/local/nexus3/nexus-data

2.2.4 启动容器

docker run -tid -p 8081:8081 --name nexus -e NEXUS_CONTEXT=nexus -v /usr/local/nexus3/nexus-data:/nexus-data  docker.io/sonatype/nexus3

搭建maven私有仓库_第2张图片
搭建maven私有仓库_第3张图片

3. 登录Nexus进行配置

3.1 登陆Nexus

访问:http://ip:8081/nexus 使用默认管理员身份登录,帐号:admin,密码:在容器中/nexus-data/admin.password中查看
搭建maven私有仓库_第4张图片

搭建maven私有仓库_第5张图片

3.2 管理仓库

Browse可以查看当前有多少仓库,搭建好的Nexus,默认会带有一些maven仓库,一般使用这些仓库就足够了。

搭建maven私有仓库_第6张图片

默认仓库说明
maven-central:maven中央库,默认从https://repo1.maven.org/maven2/拉取jar
maven-releases:私库发行版jar,初次安装请将Deployment policy设置为Allow redeploy
maven-snapshots:私库快照(调试版本)jar
maven-public:仓库分组,把上面三个仓库组合在一起对外提供服务,在本地maven基础配置settings.xml或项目pom.xml中使用

仓库类型
Group:这是一个仓库聚合的概念,用户仓库地址选择Group的地址,即可访问Group中配置的,用于方便开发人员自己设定的仓库。maven-public就是一个Group类型的仓库,内部设置了多个仓库,访问顺序取决于配置顺序,3.x默认Releases,Snapshots, Central,当然你也可以自己设置。
Hosted:私有仓库,内部项目的发布仓库,专门用来存储我们自己生成的jar文件
3rd party:未发布到公网的第三方jar (3.x去除了)
Snapshots:本地项目的快照仓库
Releases: 本地项目发布的正式版本
Proxy:代理类型,从远程中央仓库中寻找数据的仓库(可以点击对应的仓库的Configuration页签下Remote Storage属性的值即被代理的远程仓库的路径),如可配置阿里云maven仓库
Central:中央仓库
Apache Snapshots:Apache专用快照仓库(3.x去除了)

3.3 增加新的代理源

3.3.1

搭建maven私有仓库_第7张图片

3.3.2 添加maven2的代理

搭建maven私有仓库_第8张图片

3.3.3 添加代理(Cache统一设置为200天 288000)

在这里插入图片描述

十个常用代理

名称 地址
aliyun http://maven.aliyun.com/nexus/content/groups/public
apache_snapshot https://repository.apache.org/content/repositories/snapshots/
apache_release https://repository.apache.org/content/repositories/releases/
atlassian https://maven.atlassian.com/content/repositories/atlassian-public/
central.maven.org http://central.maven.org/maven2/
datanucleus http://www.datanucleus.org/downloads/maven2
maven-central (安装后自带,仅需设置Cache有效期即可) https://repo1.maven.org/maven2/
nexus.axiomalaska.com http://nexus.axiomalaska.com/nexus/content/repositories/public
oss.sonatype.org https://oss.sonatype.org/content/repositories/snapshots
pentaho https://public.nexus.pentaho.org/content/groups/omni/

搭建maven私有仓库_第9张图片

3.3.4 设置私用仓库可重复发布

Nexus安装后自带maven-releases,maven-snapshots两个仓库,用于将生成的jar包发布在这两个仓库中,在实际开发中需要将maven-releases设置为可以重复发布
搭建maven私有仓库_第10张图片

4. 创建jar仓库

4.1 创建一个maven2(hostd)的仓库

hosted(宿主):宿主仓库主要用于存放项目部署的构件、或者第三方构件用于提供下载。
proxy(代理):代理仓库就是对远程仓库的一种代理,从远程仓库下载构件和插件然后缓存在Nexus仓库中
group(仓库组):对我们已经配置完的仓库的一种组合策略。

搭建maven私有仓库_第11张图片

4.2 创建仓库

版本策略(Version Policy):

  • Releases: 一般是已经发布的Jar包
  • Snapshot: 未发布的版本
  • Mixed:混合的

布局策略(Layout Policy):

  • Strict:严格
  • Permissive:宽松

部署策略(Deployment Policy):

  • Allow Redeploy:允许重新部署
  • Disable Redeploy:禁止重新部署
  • Read-Only:只读

搭建maven私有仓库_第12张图片

你可能感兴趣的:(企业应用,maven)