nexus私仓环境搭建

简介: 本文介绍Nexus Repository Manager OSS的安装与配置,包括JDK环境准备、Nexus下载解压、用户创建及服务启动。详细说明如何配置Maven、Docker私仓,实现jar包上传与镜像推送,并支持匿名访问。同时涵盖npm、helm等仓库的搭建要点,适用于企业级私有化部署需求。(239字)

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

nexus-3.69.0-02
nexus软件

sonatype-work
nexus工作目录。
该文件夹和nexus软件在相同路径中,最好不要改动。
4
修改nexus的配置
编辑 nexus-3.69.0-02/etc/nexus-default.properties 文件。
或者编辑sonatype-work/nexus3/etc/nexus.properties文件(推荐)
5
在linux上创建nexus用户:
6
使用nexus用户登录,并启动nexus:
7
浏览器放问nexus
启动较缓慢,需要等待一段时间才能连上
http://192.168.xxx.xxx:9091/

首次登录时修改密码
1
进入nexus的web管理页面后,所有的配置都是只读的,需要登录才能操作
2
点击Sign In 进行登录默认用户名:admin默认密码:在 /home/nexus/sonatype-work/nexus3/admin.password 文件中
旧版本Nexus没有该密码文件,默认密码为:admin123
3
首次登录需要修改密码,将密码改为:admin
修改密码后,admin.password文件会被自动删除
4
配置是否允许匿名访问(配置为允许)
启用匿名访问意味着,用户可以在没有凭据的情况下从仓库搜索、浏览和下载组件。

Maven私仓
创建maven私仓
1
使用admin登录nexus
2
点击系统管理设置按钮(左上角小齿轮)
3
创建文件夹保存maven数据:进入 Repository -> Blob Stores,create blob store,类型选择File,名称输入my-maven-file,路径会自动生成,也可以自己调整。
4
创建私仓:进入 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):将需要上传的自己本地的资源库整体上传。
1
先将本地repository仓库文件夹打成一个完整的zip压缩包
2
上传到nexus服务器上
3
解压zip
4
进入repository目录
5
清理*.lastUpdated、_remote.repositories文件
6
将本地仓库里面所有的maven-metadata-alimaven.xml改名为maven-metadata.xml(alimaven是本地maven的settings文件中设置的镜像仓库名)
7
编写 mvnimport.sh 脚本,内容如下
8
将私仓文件、sh脚本授权
9
执行shell脚本并传入参数
10
等全部导入完毕后,在nexus控制台页面刷新即可看到已导入的jar

项目中使用该私仓
配置本地的maven的settings.xml配置文件,加入该私仓。例如:

Docker私仓
创建Docker私仓
1
使用admin登录nexus
2
点击系统管理设置按钮(左上角小齿轮)
3
nexus默认docker是失效的,需要 在security --> Realms,将docker配置成Active
4
创建文件夹保存maven数据:进入 Repository -> Blob Stores,create blob store,类型选择File,名称输入my-docker-file,路径会自动生成,也可以自己调整。
5
创建私仓:进入 Repository -> Repositories,create repository,选择 docker(hosted)。
Name: my-dockerOnline:默认勾选Http: 勾选,并填入将来连接该Docker仓库的端口号8889Https:已经勾选了http,可以不再勾选httpsAllow anonymous docker pull:勾选。(允许不登录时匿名下载镜像)Enable Docker V1 API:默认不勾选。(无需启动对V1旧版本API的支持)Blob store:选择刚刚创建的 my-docker-fileDeployment policy:选择 Allow redeploy(允许重复提交)点击Create repository完成创建

docker客户端对私仓镜像上传下载
需要先安装好Docker客户端,在/etc/docker/daemon.json中加入可信仓库,允许http连接:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
"insecure-registries": [
"https://cce.test.com",
"192.168.xxx.xxx:8889"
],
"data-root":"/data/docker",
"log-driver":"json-file",
"log-opts":{
"max-size":"200m",
"max-file":"3"
},
"features": {
"buildkit": true
}
}

加入配置后,重启docker:
1
2
sudo systemctl daemon-reload
sudo systemctl restart docker

下载镜像:
1
2

docker私仓配置了允许匿名下载,无需登录即可进行pull镜像

docker pull 192.168.xxx.xxx/my/tomcat:9.0.90-jre8

上传镜像:
1
2
3
4
5
6

上传镜像到私仓时,需要先登录

docker login -u admin -p admin 192.168.xxx.xxx:8889

将镜像push到私仓

docker push 192.168.xxx.xxx/aaa/aaa-portal:20241031-100820

登出

docker logout 192.168.xxx.xxx:8889

其他仓库
npm私仓、helm私仓等与前面搭建几乎一致。
与docker私仓类似,nexus默认npm也是是失效的,需要 在security --> Realms,将npm配置成Active

目录
相关文章
|
8月前
|
Java Maven 数据安全/隐私保护
Nexus仓库
Nexus是一款开源仓库管理工具,支持Maven、NPM、Docker等格式。本文介绍其在Linux与Docker环境下的安装配置,包括JDK部署、OSS版下载、仓库创建、用户权限管理及密码重置方法,并涵盖私服搭建、持久化存储、资源上传与匿名访问设置,助力企业高效构建私有仓库体系。
|
6月前
|
人工智能 Prometheus 运维
阿里云1分钟或本地部署OpenClaw+AIOps高效运维实战:Prometheus+夜莺MCP,轻量化监控分析指南
在运维场景中,传统监控架构往往存在链路复杂、定制化成本高、AI能力融合不足等问题。OpenClaw(俗称“龙虾”)作为功能强劲的AI智能体工具,虽具备强大的自动化执行能力,但直接部署面临权限过高、不符合生产环境安全要求的痛点。而夜莺MCP(管理控制平面)与Prometheus的组合,虽能实现监控数据的采集与可视化,却存在上下文交互Token消耗大、运维人员精力分散等问题。
2061 128
|
5月前
|
人工智能 运维 自然语言处理
喂饭级教程:OpenClaw阿里云/本地部署+K8s MCP 配置自动化管理容器集群,打造AI运维助手!
在AIOps领域,OpenClaw的爆火为运维工作带来了新可能——通过AI代理能力对接Kubernetes MCP(Management Communication Protocol),可实现容器集群的自动化监控、故障排查与资源管理。但OpenClaw对MCP的原生支持并不友好,需通过适配MCP客户端、封装专属技能,才能让AI真正接管运维任务。
2998 130
|
8月前
|
网络协议 关系型数据库 MySQL
nexus搭建docker私仓 使用nexus创建docker私有仓库
本文介绍如何使用Nexus搭建Docker私有仓库,包括Nexus中启用Docker仓库、创建Blob存储、配置docker-hosted仓库及端口设置,并说明防火墙开放与Docker客户端配置insecure-registry的方法,实现镜像的推送与拉取。
827 0
|
8月前
|
jenkins Java 持续交付
Jenkins前置配置
本文介绍Jenkins与GitLab集成的完整配置流程,包括:在GitLab创建Jenkins账号并配置SSH密钥;Jenkins中设置GitLab API Token、关闭host key验证;配置全局Git用户名邮箱;添加私钥凭据用于拉取代码;节点服务器环境准备,部署JDK、Maven、Node等开发工具,并配置Docker环境;最后在Jenkins中添加SSH节点,指定远程工作目录与Java路径,实现任务分发与持续集成。
447 0
|
8月前
|
Java Maven 数据安全/隐私保护
Nexus仓库
本文介绍Linux环境下Nexus Repository Manager OSS的安装与配置,包括JDK8环境搭建、Nexus下载解压、服务启动及Web访问。涵盖登录密码管理、仓库创建、Docker部署、数据持久化、Maven/NPM/Docker私仓配置与资源上传等核心操作,助力搭建高效私有仓库。
510 0
|
8月前
|
Java Maven 数据安全/隐私保护
06-nexus私仓环境搭建
本文介绍Nexus Repository Manager OSS版的安装与配置,包括JDK环境准备、Nexus部署、用户创建、启动服务及Web界面登录。详细说明如何搭建Maven、Docker私仓,实现Jar包上传、本地仓库迁移、项目配置使用私仓,以及Docker镜像的推送拉取。同时简述npm、helm等其他类型仓库的启用方法,适用于企业级制品管理。