Have a Question?

如果您有任务问题都可以在下方输入,以寻找您想要的最佳答案

nexus 3 安装教程,Nexus 3 Docker 安装

nexus 3 安装教程

题图来自Unsplash,基于CC0协议

导读

  • Nexus 3 安装教程 官方文档
  • Nexus 3 安装 系统要求
  • Nexus 3 Docker 安装
  • Nexus 3 Windows 安装步骤
  • Nexus 3 Linux 安装常见问题
  • Nexus Repository Manager 是一个强大的仓库管理器,用于管理软件构建依赖,支持多种包格式,如 Maven, npm, Docker, PyPI 等。无论手动或通过 Docker 安装,都必须满足基本的系统要求,包括足够的内存分配给 Java 运行时环境(JRE/JDK)和可用的磁盘空间来存储仓库内容。官方文档是获取全面安装、配置和维护信息的最佳来源,强烈建议在开始之前先查阅这些文档。

    下面将介绍几种常见的 Nexus Repository Manager 3 安装方法。

    准备工作:系统要求与版本选择

    • Java 运行时环境 (JRE/JDK): Nexus 3 要求 Java 运行时环境。通常建议使用 OpenJDK 11 版本。请确保您的系统上已安装兼容且适合的 Java 版本。
    • 操作系统:
      • Linux: 多种发行版,如 Ubuntu、Debian、CentOS、RHEL、SUSE 等。Nexus 3 提供了基于包管理器 (.deb, .rpm) 的安装包或直接的二进制分发包。安装方法可能因发行版或分发方式不同而略有差异,但基本安装过程类似。
      • Windows: 使用基于可执行文件和可执行脚本的安装包。
      • Docker: 对于自动化部署或容器化环境,Docker 提供了一个便捷的安装方式。这是非常推荐的一种横向扩展和管理的方法。
      • macOS: 同样可以基于 Docker 或将 Linux 安装包移植到 macOS 上。
    • 磁盘空间: 尤其是针对代理仓库(Proxy Repositories),磁盘空间要求取决于您配置的仓库的类型和大小,需要相应留足空间用于索引和缓存。
    • 可用端口: 默认情况下,Web 界面使用 8081 端口,HTTPS 使用 8443 端口,控制台管理使用 8080 端口。请确保您计划使用的端口在服务器上没有被其他服务占用。

    Linux 系统安装 (以通用二进制包为例)

    虽然 Linux 提供多种安装方式,这里以下载二进制分发包并设置系统服务为例:

    1. 下载安装包: 访问 官方网站 , 点击下载"Nexus Repository Manager 3 CE Open Source", 选择适合的操作系统类型(如 "Linux Universal")。或者直接从文档或 Nexus 官方仓库获取下载链接。
    2. 解压下载的文件: 假设下载的文件名为 nexus-3.x.x-unix.tar.gz:
      wget <下载链接>  # 或者使用 curl
      tar -xvzf nexus-3.x.x-unix.tar.gz

      这将创建一个 nexus-3.x.x 的目录,其中包含 Nexus 的所有文件。

    3. 进入解压目录:
      cd nexus-3.x.x
    4. 首次运行(通常不需要手动执行 nexusctl,但会创建数据目录): 在 Nexus 3 的模式中,使用 nexusctl 脚本来启动、停止、重启服务是比较方便的方式。如果这是您在该目录中的第一次启动,请运行:
      ./nexusctl initialize

      当被要求时,为 Nexus 选择一个运行的模式(通常选择 ① 是)。

    5. 启动 Nexus:

      ./nexusctl run

      这会在前台运行 Nexus,通常用于开发或测试目的。或者,设置为系统服务: 将 Nexus 配置为系统服务是一个好做法,确保它在系统启动时自动运行。 创建一个 systemd 服务文件,例如 /etc/systemd/system/nexus.service,内容大致如下:

      [Unit]
      Description=Nexus Repository Manager 3
      After=network.target
      
      [Service]
      User=nexus  # 或者运行用户的用户名 (确保用户有足够权限)
      Group=nexus # 或者运行用户所属的组
      ExecStart=/home/nexus/nexus-3.x.x/bin/nexus run  # 必须改成您实际的安装路径中的 nexus run 路径
      SuccessExitStatus=143
      Restart=always
      RestartSec=30s
      
      [Install]
      WantedBy=multi-user.target

      替换 /home/nexus/nexus-3.x.x/bin/nexus 为您解压目录的实际路径。 然后运行:

      sudo systemctl daemon-reload
      sudo systemctl start nexus # 启动服务
      sudo systemctl enable nexus  # 设置开机自启动

    Nexus 3 Docker 安装

    这是最常见且便于管理的方式之一。

    1. 安装 Docker: 确保您的系统已经正确安装了 Docker Engine,并且 docker 命令可以在终端中直接使用。根据您的 Linux 发行版或操作系统的官方文档进行安装。
    2. 下载并运行 Nexus 3 Docker 镜像: 使用 docker pull 获取官方镜像。
      docker pull sonatype/nexus3

      注意:官方镜像标签(Version)可能会更新,您可以指定特定版本,如 docker pull sonatype/nexus3:3.29.x

    3. 创建持久化存储: 使用 Docker Volume 来存储 Nexus 数据。
      docker volume create nexus_data
    4. 运行 Nexus 容器: 这里有一些常用的 Docker 运行参数,例如:
      • 映射端口:将主机的端口映射到容器(例如,8081 映射到 8081,用于 Web 界面)。
      • 挂载数据卷:将 nexus_data 卷挂载到容器内的合适位置,通常是 /nexus-data
      • 设置容器名称。 示例命令:
        docker run -d 
          --name nexus 
          -p 8081:8081 
          -p 8443:8443 
          -p 8080:8080 
          --link docker-entrypoint-initdb.d  # 这是旧版的入口点方法,新版可以使用更现代的方式,查看文档确认
          -v nexus_data:/nexus-data 
          sonatype/nexus3

        警告: 默认的模式是 --link (或者旧版使用的方式有时会涉及 --restart unless-stopped,核心是持久化数据卷和暴露端口)。Nexus 3 Docker 容器通常也可以配置为停止后自动重启 (--restart unless-stopped). 官方文档中通常有更推荐的设置方法,例如将入口点脚本放在卷的 docker-entrypoint-initdb.d/ 下以执行初始配置。 强烈建议: 阅读最新的 Nexus 3 官方 Docker 文档以获取最佳实践和参数。

    5. 验证安装: 成功运行后,打开浏览器访问 http://<您的服务器IP>:8081 (http 如果不考虑 HTTPS 可以先用 HTTP 访问)。首次访问需要设置管理员密码。

    Windows 系统安装

    1. 访问官方网站或下载 Nexus 3 的安装包 (如 .exe 文件)。
    2. 运行安装程序 (nexus-3.x.x.Windows.exe)。通常,标准的文件夹安装即可。
    3. 安装后,在 Start Menu 或通过命令行可以启动 Nexus。
    4. 与 Linux 类似,您可以设置为 Windows 服务。通常安装程序会提供选项,或者稍后可以手动创建服务。
    5. 首次启动应会引导您进行管理员密码的设置。

    Linux 系统安装常见问题

    • 端口冲突: 默认端口 (8081, 8080, 8443) 已被占用。可以通过编辑 Nexus 配置文件 (./etc/nexus.properties 主目录中) 或者使用不同的映射端口参数 (Docker) 来更改端口。或者暂时停止占用该端口的服务。
    • Java 版本/路径问题: 确保 java 命令在 Nexus 可执行的 $PATH 中,或者直接在 nexusctl run 命令或环境变量中指定 Java 路径 (NEXUS_JAVA_HOME)。可以尝试运行 ./bin/nexus-cli run --version 来检查 Nexus 是否能正确找到并使用正确的 Java 版本。
    • 权限问题: 确保有适当的权限来读取配置文件、运行程序、创建数据目录和绑定所需端口。在 Linux 上,以正确的用户运行服务很重要。
    • 磁盘空间问题: 启动初始索引过程需要磁盘空间,如果数据盘空间不足,可能会失败。初始化过程中有时会要求选择数据库模式 (Embedded 或 PostgreSQL)。
    • 启动失败: 如果 Nexus 启动失败,请使用 ./nexusctl debug (或命令行对应的启动参数,如 -- debug) 查看更详细的日志信息,这有助于诊断问题。

    注意事项与后续步骤

    • 管理员密码设置: 首次启动或登录后,务必立即更改管理员账户 (admin) 的默认密码。
    • 安全考虑: 在生产环境中,强烈建议配置 HTTPS、配置防火墙规则只允许必要的 IP 访问 Nexus 端口,并考虑安全加固。
    • 配置 Repository: 登录 Nexus 界面后,需要根据需求配置代理仓库(如 Maven Central)、宿主仓库(如本地 SNAPSHOT 仓库)、组仓库等。
    • 备份: 定期备份 Nexus 的数据(/nexus-data 目录或 Docker 卷 nexus_data)和配置非常重要。

    以上就是关于 Nexus Repository Manager 3 的安装教程概述。请根据您的实际环境和需求选择合适的安装方式,并参考官方文档进行详细的部署和配置。

    © 版权声明

    本文由盾科技原创,版权归 盾科技所有,未经允许禁止任何形式的转载。转载请联系candieraddenipc92@gmail.com