1.1准备前工作
1.2下载安装Nexus
1.2.1下载Nexus
Wget
1.2.2解压缩,重命名
Tar -zxvf nexu //解压缩
Mv nexu nexus //重命名
1.2.3 Nexus配置
如果Linux硬件配置较低,建议修改为适当的大小。否则,可能会发生操作冲突
Vi nexus/bin //虚拟机选项配置文件
1.2.4 Nexus启动
启动Nexus(默认端口为8081),Nexus中的一些常用命令为/usr/local/Nexus/Nexus/bin/Nexus { start | stop | run |
默认情况下,不建议以root用户身份运行Nexus。您可以在bin/nexus中更正跳过配置警告
Vi bin/nexus #(修改RUN_AS_USER=root)
Nexus:重新启动/bin/nexusstart
注:Nexus默认端口8081,要修改端口。
修改/con文件
1.2.5 修改nexus3配置文件(nexus.vmoptions)
vi bin
#调整Nexus内存参数,以防占用内存太大
-Xms256M
-XmX512M
1.2.6 其他
1.3 使用Docker安装Nexus
1.3.1 查找镜像,并选取使用次数较多的镜像进行拉取
docker search nexus
docker pull sonatype/nexus3
mkdir /opt/nexus-data
chmod 777 /opt/nexus-data
1.3.2 启动镜像
docker run -d –name nexus3
–restart=always
-m 512m
-p 8081:8081
-p 8082:8082
-p 8083:8083
-p 8084:8084
-p 8085:8085
-v /opt/nexus-data:/nexus-data
-e MIN_HEAP=256m -e MAX_HEAP=512m
-e JAVA_OPTS=’-Xms256m’ -e JAVA_OPTS=’-Xmx512m’ -e JAVA_OPTS=’-XX:MaxDirectMemorySize=512m’
sonatype/nexus3
1.3.3 查看容器日志
docker logs nexus3
docker exec -it nexus3 /bin/bash #进入docker容器内部
1.3.4 相关资料
Nexus官方:
1.3.5 相关问题
1.3.5.1 启动nexus时,没有权限操作宿主机文件夹
相关日志:
Warning: Cannot open log file: ../sonatype-work/nexus3/log
Warning: Forcing option -XX:LogFile=/tmp
java.io.FileNotFoundException: ../sonatype-work/nexus3/tmp/i4j_ZTDnGON8hezynsMX2ZCYAVDtQog=.lock (No such file or directory)
at java.io.RandomAcce(Native Method)
at java.io.RandomAcce(RandomAccessFile.java:316)
at java.io.RandomAccessFile.<init>(RandomAccessFile.java:243)
at com.in(SingleInstance.java:72)
at com.inForCurrentLauncher(SingleInstance.java:31)
at com.in(UnixLauncher.java:88)
at com.in(UnixLauncher.java:67)
Unable to update instance pid: Unable to create directory /nexus-data/instances
/nexus-data/log (No such file or directory)
Unable to update instance pid: Unable to create directory /nexus-data/instances
mkdir: cannot create directory '../sonatype-work/nexus3/log': Permission denied
mkdir: cannot create directory '../sonatype-work/nexus3/tmp': Permission denied
OpenJDK 64-Bit server VM warning: Cannot open file ../sonatype-work/nexus3/log due to No such file or directory
解决方案:修改宿主文件夹权限
chmod 777 /opt/nexus-data
1.3.5.2 设置端口8082,拒绝访问
解决方案:修改nexus配置文件 nexus.properties
application-port=8082 #修改成自己想要的端口
1.4 配置Maven私有仓
1.4.1 配置Proxy仓,将默认仓设置为阿里云中央仓
1.4.2 配置hosted仓,包括两类
1.4.3 其他
1.5 Maven私有仓的使用
1.5.1 查找Maven私有仓地址
1.5.2 修改本地Maven的全局,指向Maven proxy私有仓
vi /usr/local/maven3/con
添加如下配置:
<mirror>
<id>local</id>
<mirrorOf>*</mirrorOf>
<name>local Maven</name>
<url>;/url>
</mirror>
1.5.3 设置本地Maven使用maven hosted私有仓进行发布
<server>
<id>java-release</id>
<username>username</username>
<password>userpassword</password>
</server>
<server>
<id>java-snapshot</id>
<username>username</username>
<password>userpassword</password>
</server>
1.5.4 修改项目的,指向Maven hosted私有仓
<distributionManagement>
<repository>
<id>java-release</id>
<name>Local Nexus Release Repository</name>
<url>;/url>
</repository>
<snapshotRepository>
<id>java-snapshot</id>
<name>Local Nexus Snapshot Repository</name>
<url>;/url>
</snapshotRepository>
</distributionManagement>
备注:Id需要和中设置的Server相关的Id保持一致,以及username、password需要能够访问私有仓的权限
1.5.5 执行项目执行mvn deploy命令,发布至Maven hosted私有仓
1.5.6 查看发布的jar包
1.5.7 其他
1.6 配置Docekr私有仓
1.6.1 确保正常启动后 使用浏览器访问http://服务器ip:8081
点击右上角登录 账号密码:admin/admin123
登录后点击设置界面 选择Repositories,点击Create repository,如图所示
1.6.2 选择仓库类型,这里选择hosted类型
1.6.3 配置仓库
该仓库指定一个唯一的名称、HTTP的端口、允许交互的API等
1.6.4 连接仓库
其他机器需要连接仓库才能进行push、pull等操作,连接仓库前需要进行配置
vi /etc/docker #设置如下:
{
"registry-mirrors": [";],
"insecure-registries": ["192.168.56.11:8082"]
}
}
systemctl daemon-reload
systemctl restart docker
1.6.5 使用仓库
docker login -u admin -p admin123 192.168.56.11:8082 #注意这里的端口是配置仓库时选择的端口号
docker tag nginx:latest 192.168.56.11:8082
docker push 192.168.56.11:8082 #上传镜像
docker pull 192.168.56.11:8082 #拉取镜像
1.6.6 参考资料
1.《nexusmodmanager看这里!使用Nexus搭建maven/docker私服》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《nexusmodmanager看这里!使用Nexus搭建maven/docker私服》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.cxvn.com/gl/djyxgl/208616.html