侧边栏壁纸
博主头像
faneok博主等级

重剑无锋,大巧不工

  • 累计撰写 33 篇文章
  • 累计创建 17 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Nexus

faneok
2025-05-26 / 0 评论 / 0 点赞 / 56 阅读 / 8037 字

在 Ubuntu 上安装 Nexus Repository Manager:


​1. 准备工作​

  • ​系统要求​​:确保 Ubuntu 系统满足 Nexus 的最低要求(Java 11+,至少 4GB 内存)。

  • ​安装 Java​​:

    sudo apt update
    sudo apt install openjdk-11-jdk -y
    java -version  # 验证安装

​2. 下载 Nexus​

  • 从官方下载最新版本(社区版为 nexus-oss):

    wget https://download.sonatype.com/nexus/3/latest-unix.tar.gz
  • 解压到 /opt 目录:

    sudo tar -xvzf latest-unix.tar.gz -C /opt
    sudo mv /opt/nexus-* /opt/nexus  # 重命名文件夹

​3. 创建专用用户(可选但推荐)​

sudo useradd -M -d /opt/nexus -s /bin/bash nexus
sudo chown -R nexus:nexus /opt/nexus

​4. 配置环境变量​

编辑 /opt/nexus/bin/nexus.vmoptions,调整内存设置(根据服务器配置):

-Xms1g
-Xmx2g

​5. 配置系统服务​

  • 创建 systemd 服务文件 /etc/systemd/system/nexus.service

    [Unit]
    Description=Nexus Service
    After=network.target
    
    [Service]
    Type=forking
    User=nexus
    ExecStart=/opt/nexus/bin/nexus start
    ExecStop=/opt/nexus/bin/nexus stop
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
  • 启用并启动服务:

    sudo systemctl daemon-reload
    sudo systemctl enable nexus
    sudo systemctl start nexus

​6. 访问 Nexus​

  • 默认端口为 8081,访问:

    http://<服务器IP>:8081
  • 初始管理员密码位于:

    cat /opt/nexus/sonatype-work/nexus3/admin.password
  • 登录后按提示修改密码。


​7. 防火墙配置(如有需要)​

sudo ufw allow 8081/tcp
sudo ufw reload

​常见问题​

  • ​端口冲突​​:修改 /opt/nexus/etc/nexus-default.properties 中的 application-port

  • ​启动失败​​:检查日志 /opt/nexus/sonatype-work/nexus3/log/nexus.log

  • ​内存不足​​:调整 nexus.vmoptions 中的 -Xms-Xmx





当你在 Ubuntu 上安装 Nexus 时遇到 ​​Job failed​​ 错误(例如 systemctl 显示 The job identifier is 18166 and the job result is failed),通常是由于权限、Java 环境或 Nexus 配置问题导致的。以下是排查和解决方法:


​1. 检查服务状态和日志​

sudo systemctl status nexus
  • 查看错误详情,例如:

    Main process exited, code=exited, status=1/FAILURE

​2. 查看 Nexus 日志​

日志文件通常位于:

cat /opt/nexus/sonatype-work/nexus3/log/nexus.log

或启动日志:

journalctl -u nexus --no-pager -n 50
  • 常见错误:

    • ​Java 未正确安装​​(需 Java 11+)

    • ​权限不足​​(Nexus 目录未正确赋权)

    • ​端口冲突​​(默认 8081 被占用)


​3. 验证 Java 环境​

java -version  # 确保是 Java 11 或更高版本
  • 如果未安装或版本不对:

    sudo apt install openjdk-11-jdk -y

​4. 检查目录权限​

确保 Nexus 目录属于 nexus 用户:

sudo chown -R nexus:nexus /opt/nexus
sudo chown -R nexus:nexus /opt/sonatype-work

​5. 修改运行用户​

编辑服务文件 /etc/systemd/system/nexus.service,确认用户正确:

[Service]
User=nexus
Group=nexus

​6. 手动启动 Nexus(测试)​

切换到 nexus 用户直接运行,观察错误:

sudo -u nexus /opt/nexus/bin/nexus run
  • 如果提示 Not a daemon,改用:

    sudo -u nexus /opt/nexus/bin/nexus start

​7. 解决端口冲突​

检查 8081 端口是否被占用:

sudo netstat -tulnp | grep 8081
  • 如果冲突,修改 Nexus 端口:

    sudo nano /opt/nexus/etc/nexus-default.properties

    修改 application-port=8081 为其他端口(如 8082)。


​8. 调整内存设置​

编辑 /opt/nexus/bin/nexus.vmoptions,确保内存分配合理(根据服务器配置):

-Xms1g
-Xmx2g

​9. 重新加载并重启服务​

sudo systemctl daemon-reload
sudo systemctl restart nexus

​10. 其他常见问题​

  • ​SELinux 限制​​(仅适用于 CentOS/RHEL,Ubuntu 通常无此问题)。

  • ​文件描述符限制​​:

    ulimit -n  # 检查当前值

    编辑 /etc/security/limits.conf,增加限制:

    nexus - nofile 65536

​总结步骤​

  1. 检查日志定位具体错误。

  2. 确保 Java 11+ 已安装。

  3. 修复权限问题(chown -R nexus:nexus)。

  4. 解决端口或内存配置冲突。

  5. 重新启动服务。

如果问题仍未解决,请提供 ​​日志中的具体错误信息​​,以便进一步分析!

0

评论区