当前位置: 首页 > news >正文

【Nexus】Maven 私服搭建以及上传自己的Jar包

Nexus 安装

docker run -d -uroot --name nexus3 --restart=always -p 8081:8081 -v /data/nexus-data/blobs:/nexus-data/blobs   -v /etc/localtime:/etc/localtime sonatype/nexus3

这里也提供一下docker-composer的方法
.env 文件

VERSION=latest
CONTAINER_NAME=CONTAINER_NAME
HOST_IP=0.0.0.0
WEB_HTTP_PORT=8081
CPUS=0
MEMORY_LIMIT=0MB
APP_PATH=/www/dk_project/dk_app/nexus/nexus_RkXe

docker-composer.yml 文件

services:
  nexus_RkXe:
    image: sonatype/nexus3:${VERSION}
    #    container_name: ${CONTAINER_NAME}
    deploy:
      resources:
        limits:
          cpus: ${CPUS}
          memory: ${MEMORY_LIMIT}
    restart: always
    ports:
      - ${HOST_IP}:${WEB_HTTP_PORT}:8081
    environment:
      - TZ=Asia/Shanghai
    volumes:
      - ${APP_PATH}/data:/nexus-data
    labels:
      createdBy: "bt_apps"
    networks:
      - baota_net

networks:
  baota_net:
    external: true

在目录下执行 docker-compose up -d 即可

安装完成后 进入 ip:8081 进行 访问

默认用户名 admin
密码:在第一次启动后 会在其工作目录 生成 admin.password 文件

Nexus 仓库类型

Nexus 主要有三种类型的仓库:

代理仓库(Proxy Repository)

作为远程仓库的本地缓存
当开发者请求组件时,Nexus 首先检查本地是否有缓存,如没有则从远程仓库下载并缓存
减少带宽使用,加快构建速度,提供断网情况下的依赖获取能力

宿主仓库(Hosted Repository)

用于存储组织内部开发的组件/制品
完全由本地 Nexus 服务管理
可以上传私有库、内部开发的组件或第三方不公开的组件

组仓库(Group Repository)

将多个仓库(代理和/或宿主)组合成一个逻辑仓库
简化客户端配置,客户端只需配置一个组仓库地址
提供统一的访问点,简化依赖管理

创建组仓库

创建阿里云代理仓库

登录进入页面后,如下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
选择对应的仓库类型
在这里插入图片描述
进入后,只需要配置这两个就行,其余默认即可
在这里插入图片描述
第一个是 输入仓库名字,你自己命名即可
第二个是 输入仓库的链接,比如阿里的链接是:https://maven.aliyun.com/repository/public

将新建的仓库加入组仓库

在这里插入图片描述
在这里插入图片描述
将阿里云的仓库加入组仓库即可

本地配置

配置Maven settings

在这里插入图片描述
在这里插入图片描述
如图将我们的仓库配置进去即可

将自定义的Starter上传

在Maven 项目的pom.xml 文件中加入如下片段

   <!--内部搭建的maven仓库 :使用分发管理将本项目打包成jar包,直接上传到指定的服务器上-->
    <distributionManagement>
        <!--        正式版本-->
        <repository>
            <!--    nexus服务器中用户名: 在settings.xml中<Server> 的id-->
            <!--   <id>jade-release</id>-->
            <id>mymaven</id>
            <name>mymaven</name>
            <url>http://ip:prot/repository/maven-releases</url>
        </repository>
        <!--        快照-->
        <snapshotRepository>
            <!--            <id>jade-snapshot</id>-->
            <id>mymaven</id>
            <name>mymaven</name>
            <url>http://ip:prot/repository/maven-snapshots</url>
        </snapshotRepository>
    </distributionManagement>

然后执行 maven 的 deploy 即可将自定义的jar 包上传到仓库
在这里插入图片描述

相关文章:

  • Gemini 2.0 全面解析:技术突破、应用场景与竞争格局
  • 正新鸡排:在变革浪潮中领航,打造连锁餐饮新生态
  • ARM内部寄存器与常用汇编指令(ARM汇编)
  • oracle中OS BLOCK的含义
  • QGIS如何制作人口流向图
  • 蓝桥杯好题推荐---扫雷
  • Nexus File类型Blob Stores迁移至Minio操作指南(上)
  • 深入理解静态与动态代理设计模式:从理论到实践
  • 泛目录程序:无需数据库的高效站群解决方案
  • 【STM32】从新建一个工程开始:STM32 新建工程的详细步骤
  • 解决 Redis 后台持久化失败的问题:内存不足导致 fork 失败
  • stm32 L432KC(mbed)入门第一课
  • 使用Arduino、ESP8266和GPS在Google地图上追踪车辆
  • 户外光伏气象站:精准监测气象数据,助力光伏电站高效运行
  • std::invoke详解
  • C语言中的流程控制语句
  • PN结和三极管
  • 基于 RWA 模型与 AI - Agent 协同的企业级 aPAAS 架构设计
  • 编译原理:语法分析程序【附源码和超详细注释】
  • 【Unity网络同步框架 - Nakama研究(三)】
  • 莱布雷希特专栏:古典乐坛边缘人
  • 上千螺母引发的枪支散件案:五金厂老板的儿子被诉,律师作无罪辩护
  • “打铁”热邂逅江南水乡,长三角首个国际级铁三赛事有何不同
  • 左手免费午餐右手花开岭,邓飞14年公益之路的中国贡献
  • 广东信宜一座在建桥梁暴雨中垮塌,镇政府:未造成人员伤亡
  • 常州新型碳材料集群产值近二千亿,请看《浪尖周报》第24期