1.1准备前工作

首先在Linux系统上安装JDK、Maven

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

-XX:MaxDirectMemerySize=512M

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