Nexus3:安装、配置

来自Wikioe
跳到导航 跳到搜索


关于

【以下使用 Nexus OSS 3.x 版本】

Nexus 提供了两种安装方式:

  1. 第一种是内嵌 Jetty 的 bundle,解压到安装目录中就能直接运行;
  2. 第二种方式是 WAR,将其发布到 web 容器中即可使用。
  • Nexus 要求 jdk 版本为 1.7

安装

下载地址:https://www.sonatype.com/thanks/repo-oss?submissionGuid=35aa362b-077c-455b-b7b1-c77b3244c94e
或者:https://www.sonatype.com/download-oss-sonatype

安装:

  1. 下载压缩包(如:“nexus-3.36.0-01-win64.zip”);
  2. 解压:
    到目录(如:“D:\Program Files\Nexus3”),包含两个文件夹“nexus-3.36.0-01”、“sonatype-work”;
  3. 注册服务:
    # 在“./nexus-3.36.0-01/bin”目录
    nexus.exe /install Nexus3
    
    • 如果提示“Could not open SCManager”,则需要:以管理员身份运行 cmd,然后重新执行。
    Nexus:注册服务.png

配置:

  1. 端口配置:“./nexus-3.36.0-01/etc/nexus-default.properties”;(默认 8081)
  2. (其他配置:“./nexus-3.36.0-01/bin/nexus.vmoptions”);

启动:(两种方法)

  • 启动需要几分钟的时间;
  1. 通过服务:启动注册的服务即可;
  2. 通过命令行:
    # 在“./nexus-3.36.0-01/bin”目录
    nexus.exe /start Nexus3
    
    Nexus:cmd启动.png

访问:

http://localhost:8091/
  • 默认的用户名/密码:admin/admin123
  • 默认生成的密码,位于“./sonatype-work/nexus3/admin.password”文件中。

更新

参考:
1、 https://support.sonatype.com/hc/en-us/articles/115000350007-Upgrading-Nexus-Repository-Manager-3
2、 https://help.sonatype.com/repomanager3/installation-and-upgrades/upgrading-a-standalone-instance

更新步骤:

  1. 从官方下载的最新安装程序包。
  2. 准备安装:
    1. 解压新的程序包;
    2. 比较新的程序包与现有安装包的“nexus-3.x/bin/nexus.vmoptions”文件:
      • 如果更改了数据目录的默认位置,修改“-Dkaraf.data=../sonatype-work/nexus3”;
      • 如果更改了临时目录的默认位置,修改“-Djava.io.tmpdir=../sonatype-work/nexus3/tmp”;
      • 如果更改了 Java 虚拟机最大堆内存,修改“-Xmx1200M”;
      • 如果已启用 Jetty HTTPS 访问权限,确保“etc/jetty/jetty-https.xml”的 SSL 密钥库位置仍然可用于新安装;
      • 如果手动调整了“./etc”下任何其他安装文件,需要手动执行旧文件和新文件之间的差异,并将更改应用于新版本(如果适用)。
        • 特别注意“./etc/nexus-default.properties”中端口的修改
  3. 执行安装:
    1. 对现有数据目录和任何自定义 blobstore 位置进行最新备份;
    2. 停止并卸载已有 nexus 服务;
      • (通过“./bin”下脚本,或系统服务)
    3. 安装并启动新的 nexus 服务;
      • (通过“./bin”下脚本,或系统服务)
    4. 检查日志文件中是否存在任何可能的问题,并登录服务器以确认一切正常。
      • (默认日志路径在 sonatype-work/nexus3/log 下)

服务管理

Nexus 3 通过以下命令管理其服务:

# 安装
nexus.exe /install <service-name>
# 卸载
nexus.exe /uninstall <service-name>

# 启动
nexus.exe /start <service-name>
# 停止
nexus.exe /stop <service-name>

# 状态
nexus.exe /status <service-name>
  • 命令均在安装目录(“./nexus-3.36.0-01/bin”)执行。

目录结构

参考: https://help.sonatype.com/repomanager3/installation-and-upgrades/directories

Nexus

  1. nexus-3.36.0-01安装目录【升级时只需要替换该目录】
    • bin:启动脚本、相关配置
      “nexus.vmoptions”:运行时配置
    • etc: jetty、karaf 等配置
      “nexus-default.properties”:端口、主机、上下文配置
    • jre:jre 环境
    • lib:依赖库
    • public:公共资源
    • system:构成 nexus 的所有组件和插件
  2. sonatype-work工作目录(数据目录)
    • nexus3
      • blobs:创建 blob 的默认路径,当然也可以重新指定
      • cache:当前缓存的 karaf 包的信息
      • db:OrientDB 数据库的数据,用于存储 nexus 的元数据的数据库
      • elasticsearch:当前配置的 Elasticsearch 状态
      • etc:大概是运行时配置状态和关于资源库的自定义的相关的东西???
      • health-check:健康检查的相关报告
      • keystores:自动生成的关于资源库的 ID 主键
      • log:日志文件
      • orient
      • tmp:临时存储
      • “clean_cache”:

仓库类型(“TYPE”)

  1. proxy代理仓库,即,代理仓库就是远程仓库的代理。
    • 默认 Nexus 仓库管理自带三种代理仓库 Apache Snapshots / Codehaus Snapshots / Central,但是在 3.x 中就只有 Central 了。
  2. hosted宿主仓库,即,被仓库管理者持有的仓库。
    • Nexus 仓库管理自带三种宿主仓库 3rd Party / Releases / Snapshots,在 3.x 中默认不带 3rd Party 了。
  3. group仓库组,一些其它仓库的组合。
    • 不具有实际仓库的功能,只是对现有的仓库组织起来。客户端请求的还是实际配置的仓库。
    • 仓库组配置时,需要注意成员仓库的顺序:“建议将‘宿主仓库’置于‘代理仓库’之前。(使用时:先查找‘宿主仓库’再查找‘代理仓库’)”