Nexus安装配置
官方文档:https://help.sonatype.com/repomanager3/download/download-archives—repository-manager-3
版本说明
- jdk: 需要1.8以上版本(我用的是oracle jdk1.8.0_131, openjdk和 oracle 的都可以)
- Nexus: 这里我用的是3.32.0-03
- 系统版本: Centos 7.8
准备
因为是 java 项目,依赖 jdk,需要提前安装好, 这里略过
安装
下载
https://download.sonatype.com/nexus/3/nexus-3.32.0-03-unix.tar.gz
解压
tar xf nexus-3.32.0-03-unix.tar.gz -C /opt
修改配置
配置内存
配置文件: $install-dir/bin/nexus.vmoptions
-Xms2703M
-Xmx2703M
-XX:MaxDirectMemorySize=2703M
配置端口
配置文件: $data-dir/etc/nexus.properties
application-port=8081
访问地址: http://localhost:8081/
配置上下路径
配置文件: $data-dir/etc/nexus.properties
nexus-context-path=/components/
这时访问的地址就变成了: http://localhost:8081/components/
配置数据存储目录
配置文件: $install-dir/bin/nexus.vmoptions
-Dkaraf.data=/opt/sonatype-work/nexus3
-Djava.io.tmpdir=/opt/sonatype-work/nexus3/tmp
-XX:LogFile=/opt/sonatype-work/nexus3/log/jvm.log
-Dkaraf.log=/opt/sonatype-work/nexus3/log
配置临时目录
配置文件: $install-dir/bin/nexus.vmoptions
默认目录: $data-dir/tmp
-Djava.io.tmpdir=../sonatype-work/nexus3/tmp #可以是绝对路径也可以是相对路径
启动
Nexus 不建议使用 root 用户启动,在bin/nexus.rc
文件里修改启动用户
systemd
[Unit]
Description=nexus service
After=network.target
[Service]
Type=forking
LimitNOFILE=65536
ExecStart=/opt/nexus-3.15.2-01/bin/nexus start
ExecStop=/opt/nexus-3.15.2-01/bin/nexus stop
User=nexus
Restart=on-abort
TimeoutSec=600
[Install]
WantedBy=multi-user.target
手动
./bin/nexus {start|stop|run|run-redirect|status|restart|force-reload}
用户认证
LDAP
- Name:OKAY(自定义)
- Server:ldap://192.168.1.100:389
- Search base DN: OU=kai,dc=chk,dc=cn
- Authentication method: Simple Authentication
- Username or DN: 认证用户名或者 DN
- Password: 认证密码
升级
略
官方文档: https://help.sonatype.com/repomanager3/upgrading#Upgrading-PerformtheUpgrade
备份
Nexus 中普通 数据 信息和元数据是分开存储的,前者保存在 blob 目录中,后者保存在数据库中,两者都需要备份,备份策略中必须要同时包含两者才能保证数据 的完整性,所以要备份两类数据:
-
自定义的配置()
-
blob 数据
-
元数据
元数据备份
这一步在 Nexus里添加个 tasks(Admin-Export databases for backup) 即可,步骤见官方文档:https://help.sonatype.com/repomanager3/backup-and-restore/configure-and-run-the-backup-task
备份 blob 数据
blob 数据存储在 $data-dir/blobs
目录,备份此目录即可。
恢复
-
停止 Nexus服务
-
删除原有的
$data-dir/db
目录下的-
component
-
config
-
security
-
-
将备份的数据文件复制到
$data-dir/restore-from-backup
,进行恢复(注意:对于3.10.0或更早版本使用作为恢复位置)$data-dir/backup
) -
不愿对应的 blob 备份
-
启动 Nexus