06-nexus私仓环境搭建

简介: 本文介绍Nexus私有仓库环境搭建全过程,包括JDK安装、Nexus OSS版下载与解压、配置文件修改、创建nexus用户并启动服务。详细说明了如何通过Web界面登录、修改默认密码、配置匿名访问,并创建Maven私仓。同时提供上传本地jar包的两种方式,重点演示使用脚本批量导入本地仓库依赖的方法,包含清理无效文件、重命名元数据及执行上传命令等步骤,适用于企业内网构建Maven私服场景。

06-nexus私仓环境搭建

Nexus安装检查服务器上是否安装有 JDK 1.8 +,如果没有则需要下载安装JDK。到sonatype官网下载Nexus Repository Manager OSSnexus有OSS版和PRO版。OSS版开源免费,PRO版需要付费。此处下载OSS版将下载的压缩包放到服务器解压sonatype将Nexus安装包托管到了 Fastly CDN,国内访问Fastly CDN非常卡顿。可能会下载失败,需要多试几次。

解压后会有两个文件夹:nexus-3.69.0-02nexus软件sonatype-worknexus工作目录。该文件夹和nexus软件在相同路径中,最好不要改动。修改nexus的配置编辑 nexus-3.69.0-02/etc/nexus-default.properties 文件。或者编辑sonatype-work/nexus3/etc/nexus.properties文件(推荐)在linux上创建nexus用户:使用nexus用户登录,并启动nexus:浏览器放问nexus启动较缓慢,需要等待一段时间才能连上http://192.168.xxx.xxx:9091/首次登录时修改密码进入nexus的web管理页面后,所有的配置都是只读的,需要登录才能操作点击Sign In 进行登录默认用户名:admin默认密码:在 /home/nexus/sonatype-work/nexus3/admin.password   文件中旧版本Nexus没有该密码文件,默认密码为:admin123首次登录需要修改密码,将密码改为:admin修改密码后,admin.password文件会被自动删除配置是否允许匿名访问(配置为允许)启用匿名访问意味着,用户可以在没有凭据的情况下从仓库搜索、浏览和下载组件。Maven私仓创建maven私仓使用admin登录nexus点击系统管理设置按钮(左上角小齿轮)创建文件夹保存maven数据:进入 Repository -> Blob Stores,create blob store,类型选择File,名称输入my-maven-file,路径会自动生成,也可以自己调整。创建私仓:进入 Repository -> Repositories,create repository,选择 maven2(hosted)(内网无法连接代理,只能为本机Maven)。Name: my-mavenOnline:默认勾选Version policy:选择Mixed(快照版和发布版都允许上传)Layout policy:默认StrictContent Disposition:默认 inlineBlob store:选择刚刚创建的my-maven-fileStrict Content Type Validation:默认勾选Deployment policy:选择 Allow redeploy(允许重复上传)点击Create repository完成创建向maven私仓上传jar包方式1(适合上传单个jar):使用admin登录页面,点击左侧Upload,选择my-maven,将需要上传的jar包上传即可。方式2(适合上传多个jar):将需要上传的自己本地的资源库整体上传。先将本地repository仓库文件夹打成一个完整的zip压缩包上传到nexus服务器上解压zip进入repository目录清理*.lastUpdated、_remote.repositories文件



# 查看所有*.lastUpdated

find . -name '*.lastUpdated' -type f

# 删除*.lastUpdated

find . -name '*.lastUpdated' -type f -exec rm {} +

# 检查

find . -name '*.lastUpdated' -type f


# 查看所有 _remote.repositories 文件

find . -name '_remote.repositories' -type f

# 删除所有 _remote.repositories 文件

find . -name '_remote.repositories' -type f -exec rm {} +

# 检查

find . -name '_remote.repositories' -type f


# 查看所有resolver-status.properties 文件

find . -name 'resolver-status.properties' -type f

# 删除所有 resolver-status.properties 文件

find . -name 'resolver-status.properties' -type f -exec rm {} +

# 检查

find . -name 'resolver-status.properties' -type f


将本地仓库里面所有的maven-metadata-alimaven.xml改名为maven-metadata.xml(alimaven是本地maven的settings文件中设置的镜像仓库名)


find . -name "maven-metadata-alimaven.xml" -execdir mv {} maven-metadata.xml \;

编写 mvnimport.sh 脚本,内容如下


#!/bin/bash

# copy and run this script to the root of the repository directory containing files

# this script attempts to exclude uploading itself explicitly so the script name is important

# Get command line params

while getopts ":r:u:p:" opt; do

   case $opt in

       r) REPO_URL="$OPTARG"

       ;;

       u) USERNAME="$OPTARG"

       ;;

       p) PASSWORD="$OPTARG"

       ;;

esac

done

find . -type f -not -path './mavenimport\.sh*' -not -path '*/\.*' -not -path '*/\^archetype\-catalog\.xml*' -not -path '*/\^maven\-metadata\-local*\.xml' -not -path '*/\^maven\-metadata\-deployment*\.xml' | sed "s|^\./||" | xargs -I '{}' curl -u "$USERNAME:$PASSWORD" -X PUT -v -T {} ${REPO_URL}/{} ;

将私仓文件、sh脚本授权执行shell脚本并传入参数


./mvnimport.sh -u admin -p admin -r http://192.168.xxx.xxx:9091/repository/my-maven/

等全部导入完毕后,在nexus控制台页面刷新即可看到已导入的jar

相关文章
|
Kubernetes Linux Docker
银河麒麟v10离线安装docker二进制包
银河麒麟v10离线安装docker二进制包
5019 0
|
Java 中间件 数据库连接
分库分表的4种方案
分库分表的4种方案
2647 0
|
10月前
|
Java Maven 数据安全/隐私保护
Nexus仓库
Nexus是一款开源仓库管理工具,支持Maven、NPM、Docker等格式。本文介绍其在Linux与Docker环境下的安装配置,包括JDK部署、OSS版下载、仓库创建、用户权限管理及密码重置方法,并涵盖私服搭建、持久化存储、资源上传与匿名访问设置,助力企业高效构建私有仓库体系。
|
10月前
|
Java Maven 数据安全/隐私保护
Nexus仓库
本文介绍Linux环境下Nexus Repository Manager OSS的安装与配置,包括JDK8环境搭建、Nexus下载解压、服务启动及Web访问。涵盖登录密码管理、仓库创建、Docker部署、数据持久化、Maven/NPM/Docker私仓配置与资源上传等核心操作,助力搭建高效私有仓库。
652 0
|
10月前
|
人工智能 前端开发 JavaScript
挤爆字节服务器的Agent到底啥水平?Coze一手实测来了
Coze Agent真能挤爆字节服务器?三天深度实测,从配置到API集成,揭秘其真实性能:指令精准、插件实用,技术写作与代码辅助表现亮眼,但创造力与长文本仍有限。非营销噱头,而是值得开发者投入的高效工具。
|
安全 JavaScript 前端开发
安全漏洞检测集成及实践:SAST/DAST工具集成指南
通过合理集成和配置SAST/DAST工具,可以显著提升应用程序的安全性,并在开发早期发现和修复漏洞,降低安全风险和维护成本
1473 4
|
10月前
|
Java Maven 数据安全/隐私保护
Nexus仓库
本文介绍了Nexus Repository Manager的Linux安装与配置,包括JDK环境搭建、OSS版下载、解压启动、仓库管理及Docker部署方式。详细说明了登录、密码重置、仓库创建、Maven/NPM/Docker私服配置与资源上传等操作,并提供常用命令与配置示例,助力高效搭建私有仓库。
840 0
|
XML 安全 前端开发
一行代码搞定禁用 web 开发者工具
在如今的互联网时代,网页源码的保护显得尤为重要,特别是前端代码,几乎就是明文展示,很容易造成源码泄露,黑客和恶意用户往往会利用浏览器的开发者工具来窃取网站的敏感信息。为了有效防止用户打开浏览器的 Web 开发者工具面板,今天推荐一个不错的 npm 库,可以帮助开发者更好地保护自己的网站源码,本文将介绍该库的功能和使用方法。 功能介绍 npm 库名称:disable-devtool,github 路径:/theajack/disable-devtool。从 f12 按钮,右键单击和浏览器菜单都可以禁用 Web 开发工具。 🚀 一行代码搞定禁用 web 开发者工具 该库有以下特性: • 支持可配
1791 22
|
JSON Java 数据库连接
IDEA的插件大总汇 (让你的工作效率大大提高!)
我是小假 期待与你的下一次相遇 ~
4090 5

热门文章

最新文章