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

Ubuntu 上安装和配置 Nexus Repository Manager

Ubuntu 上安装和配置 Nexus Repository Manager(Sonatype Nexus)通常用于管理 Maven、npm、Docker 等包的私有仓库。以下是详细步骤:


1. 系统准备

更新系统并安装必要依赖:

在终端运行以下命令:

sudo apt update
sudo apt upgrade -y
sudo apt install -y wget openjdk-11-jdk unzip

确保安装了 Java(Nexus 需要 Java 11 或更高版本):

java -version

如果没有安装正确的 Java 版本,可以用以下命令安装:

sudo apt install openjdk-11-jdk

2. 下载 Nexus

访问 Sonatype 官网 下载 Nexus 的最新版本。或者通过终端直接下载:

wget https://download.sonatype.com/nexus/3/latest-unix.tar.gz

3. 解压和移动到目标目录

解压下载的文件:

tar -zxvf latest-unix.tar.gz

将解压后的目录移动到 /opt(或其他你希望的路径):

sudo mv nexus-3.* /opt/nexus
sudo mv sonatype-work /opt/sonatype-work

4. 创建 Nexus 用户

为了安全性,建议创建一个独立用户运行 Nexus:

sudo useradd -M -d /opt/nexus -r -s /bin/false nexus
sudo chown -R nexus:nexus /opt/nexus /opt/sonatype-work

5. 配置 Nexus

编辑 Nexus 启动文件,设置非 root 用户运行:

sudo nano /opt/nexus/bin/nexus.rc

将以下内容添加到文件中:

run_as_user="nexus"

保存并退出。


6. 配置 Nexus 服务

创建一个 Systemd 服务文件来管理 Nexus:

sudo nano /etc/systemd/system/nexus.service

在文件中粘贴以下内容:

[Unit]
Description=Nexus Repository Manager
After=network.target

[Service]
Type=forking
LimitNOFILE=65536
User=nexus
Group=nexus
ExecStart=/opt/nexus/bin/nexus start
ExecStop=/opt/nexus/bin/nexus stop
Restart=on-abort

[Install]
WantedBy=multi-user.target

保存并退出。


7. 启动并启用 Nexus 服务

重新加载 Systemd 配置:

sudo systemctl daemon-reload

启动 Nexus 服务:

sudo systemctl start nexus

设置开机启动:

sudo systemctl enable nexus

检查服务状态:

sudo systemctl status nexus

8. 访问 Nexus Web 界面

Nexus 默认运行在 8081 端口。打开浏览器,访问以下地址:

http://<你的服务器IP>:8081

首次登录时:

  • 默认用户名:admin
  • 默认密码:在 /opt/sonatype-work/nexus3/admin.password 文件中。
    查看密码命令:
    cat /opt/sonatype-work/nexus3/admin.password
    

9. 配置 Nexus

登录后,根据需要配置:

  • 创建私有 Maven、npm 或 Docker 仓库。
  • 设置用户和权限。
  • 配置代理或组仓库。

如果在安装或运行过程中遇到问题,可以告诉我具体错误,我会帮你排查!

在 Ubuntu 上运行 Nexus 时,可以通过调整启动脚本中的 JVM 参数来配置内存限制为 1GB。以下是详细步骤:


1. 编辑 Nexus 配置文件

打开 Nexus 的 JVM 配置文件:

sudo nano /opt/nexus/bin/nexus.vmoptions

2. 修改 JVM 内存参数

在文件中,找到或添加以下行,设置内存大小为 1GB:

-Xms1G   # 设置 JVM 最小内存为 1GB
-Xmx1G   # 设置 JVM 最大内存为 1GB
-XX:MaxDirectMemorySize=1G  # 设置直接内存为 1GB

解释

  • -Xms:设置 JVM 启动时的最小堆内存大小。
  • -Xmx:设置 JVM 最大堆内存大小。
  • -XX:MaxDirectMemorySize:设置 JVM 的直接内存分配大小。

3. 保存并退出

按下 Ctrl+O 保存更改,按下 Ctrl+X 退出编辑器。


4. 重启 Nexus 服务

使配置生效需要重启 Nexus 服务:

sudo systemctl restart nexus

5. 验证内存设置

检查 Nexus 服务运行状态,确认是否正常启动:

sudo systemctl status nexus

你还可以使用以下命令查看 Nexus 的内存使用情况:

ps aux | grep nexus

6. (可选)监控 JVM 内存

如果需要更详细地监控 Nexus 的内存使用,可以通过以下方法:

  • 使用工具如 jconsoleVisualVM 连接到 Nexus 的 JVM。
  • 在 Nexus 的启动参数中添加 -XX:+PrintGCDetails-XX:+PrintGCTimeStamps,以便在日志中记录垃圾回收信息。

配置完成后,Nexus 将以最大 1GB 的内存运行。如果遇到性能问题,可以根据需要调整内存大小。

上传

mvn deploy:deploy-file -Dfile=\\Mac\Home\Desktop\netty-socketio-1.7.18-SNAPSHOT.jar -DgroupId=com.corundumstudio.socketio -DartifactId=netty-socketio -Dversion=1.7.18-SNAPSHOT -Dpackaging=jar -DrepositoryId=nexus -Durl=http://13.229.140.142:8081/repository/gaming/

http://www.kler.cn/a/543901.html

相关文章:

  • windows系统远程桌面连接ubuntu18.04
  • 使用 Notepad++ 编辑显示 MarkDown
  • anolis os 8.9安装jenkins
  • 如何设置爬虫的IP代理?
  • 5-R循环
  • python卷积神经网络人脸识别示例实现详解
  • 相机模数转换
  • AWTK-WEB 快速入门(4) - JS Http 应用程序
  • 关于 IoT DC3 中设备(Device)的理解
  • 使用Node.js进行串口通信
  • 力扣-二叉树-144.145. 94 前、后、中序遍历,
  • 【力扣 - 简单题】88. 合并两个有序数组
  • MySQL中的覆盖索引的使用
  • 用AI绘制CAD气温曲线图
  • 【大语言模型】最新ChatGPT、DeepSeek等大语言模型助力高效办公、论文与项目撰写、数据分析、机器学习与深度学习建模等科研应用
  • 【Mac排错】ls: command not found 终端命令失效的解决办法
  • 【Elasticsearch】Elasticsearch检索方式全解析:从基础到实战(二)
  • RabbitMQ的死信队列的产生与处理
  • 如何使用deepseek等AI工具辅助web后端工作的开发
  • VMware 虚拟机 ubuntu 20.04 扩容工作硬盘
  • Java常用设计模式面试题总结(内容详细,简单易懂)
  • 动态规划LeetCode-1049.最后一块石头的重量Ⅱ
  • HAC++: Towards 100X Compression of 3D Gaussian Splatting
  • 力扣——【104. 二叉树的最大深度】
  • Apache Kafka 中的认证、鉴权原理与应用
  • 安全运维:cmd命令大全(非常详细)零基础入门到精通,收藏这一篇就够了_cmd的20个基本命令