构建镜像服务器
环境说明
- Centos 7.6
- apache-maven-3.9.6-bin【安装可选】
- nexus-3.76.0-03-unix.tar.gz
- JDK17
安装maven
- 解压文件
tar -zxvf apache-maven-xxx-bin.tar.gz -C 目标路径
- 设定环境变量
vim /etc/profile
# set mvn
export M2_HOME=/opt/maven3
export PATH=$PATH:$JAVA_HOME/bin:$M2_HOME/bin
- 验证配置是否正确
mvn --version
安装nexus
- 解压文件
tar -zxvf nexus-3.76.0-03-unix.tar.gz -C 目标路径【/app】
- 设定解压后的文件所有者为普通用户
chown -R [user]:[usergroup] /app
- 添加启动用户
vim /app/nexus-3.76.0-03/bin/nexus.rc
-
设置系统启动
- 构建系统启动文件
/etc/systemd/system/nexus.service [Unit] Description=nexus service After=network.target [Service] Type=forking ExecStart=/app/nexus-3.76.0-03/bin/nexus start ExecStop=/app/nexus-3.76.0-03/bin/nexus stop User=nexus Restart=on-abort [Install] WantedBy=multi-user.target- 重载系统配置
sudo systemctl daemon-reload -
启动失败问题分析
- 问题现象
启动后,内存占有率100% ,而后服务程序停止- 原因分析
# nexus3的启动默认【nexus.vmoptions】 -Xms2048m -Xmx2048m -XX:MaxDirectMemorySize=2048m- 解决方案
# 修改上述内存配置 -Xms128m -Xmx512m -XX:MaxDirectMemorySize=512m -
忘记管理员密码
- 首先停止nexus 服务
nexus stop- 进入OrientDB控制台。
java -jar ./lib/support/nexus-orient-console.jar- 连接数据库
connect plocal:../sonatype-work/nexus3/db/security admin admin- 更新密码admin123
update user SET password="$shiro1$SHA-512$1024$NE+wqQq/TmjZMvfI7ENh /g==$V4yPw8T64UQ6GfJfxYq2hLsVrBY8D1v+bktfOxGdt4b/9BthpWPNUy/CBk6V9iA0nHpzYzJFWO8v/tZFtES8CA==" UPSERT WHERE id="admin" -
应用场景- 公共组件作为其它项目依赖
- 公共组件中POM配置设定
<distributionManagement> <repository> <id>nexus-releases</id> <url>http://xx.xxx.xxx.xx:8081/repository/maven-releases/</url> </repository> <snapshotRepository> <id>nexus-snapshots</id> <url>http://xx.xxx.xxx.xx:8081/repository/maven-snapshots/</url> </snapshotRepository> </distributionManagement>- 本地maven setting的设定-配置上述镜像仓库的用户名,密码信息
<server> <id>nexus-releases</id> <username>admin</username> <password>nexus@123</password> </server> <server> <id>nexus-snapshots</id> <username>admin</username> <password>nexus@123</password> </server>