在 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/nexus4. 配置环境变量
编辑 /opt/nexus/bin/nexus.vmoptions,调整内存设置(根据服务器配置):
-Xms1g
-Xmx2g5. 配置系统服务
创建 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-work5. 修改运行用户
编辑服务文件 /etc/systemd/system/nexus.service,确认用户正确:
[Service]
User=nexus
Group=nexus6. 手动启动 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
-Xmx2g9. 重新加载并重启服务
sudo systemctl daemon-reload
sudo systemctl restart nexus10. 其他常见问题
SELinux 限制(仅适用于 CentOS/RHEL,Ubuntu 通常无此问题)。
文件描述符限制:
ulimit -n # 检查当前值编辑
/etc/security/limits.conf,增加限制:nexus - nofile 65536
总结步骤
检查日志定位具体错误。
确保 Java 11+ 已安装。
修复权限问题(
chown -R nexus:nexus)。解决端口或内存配置冲突。
重新启动服务。
如果问题仍未解决,请提供 日志中的具体错误信息,以便进一步分析!
评论区