在企业中,通常会自己内部搭建一套公司内部的jar管理仓库,也就是通常说的maven私服,建立私服的好处是,可以在公司内部共享内部jar包,通常是一些通用模块。
一、Nexus 安装
1.1 下载镜像
docker pull sonatype/nexus3
1.2 运行镜像
docker run -d -p 7788:8081 --name nexus --restart=always sonatype/nexus3
1.3 查看密码
docker exec -it 容器名/容器id /bin/bash
nexus-data/admin.password 文件中记录admin初始密码。通过cat命令可以查看 b43e6509-dd8b-45b2-887b-9f9d757aec26
1.4 开放端口
firewall-cmd --zone=public --add-port=7788/tcp --permanent
firewall-cmd --reload
1.5 测试

二、从私服拉取构建
2.1 单个项目配置
<repositories>
<repository>
<id>nexus_public</id>
<url>http://192.168.139.128:8081/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
</repository>
</repositories>
2.2 全局配置
<profiles>
<profile>
<id>nexusProfile</id>
<repositories>
<repository>
<id>nexus</id>
<url>http://192.168.139.128:8081/repository/maven-public/</url>
<layout>defult</layout>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>nexusProfile</activeProfile>
</activeProfiles>
三、部署构建到私服
把本地工程发布到私服,需要在当前工程的pom文件中配置 distributionManagement 节点。同时需要在setting.xml中配置认证信息
3.1 配置私服地址信息
<distributionManagement>
<repository>
<id>releases</id> <!-- 注意这里的名字必须和 认证信息中的id一致 -->
<name>User Project Release</name>
<url>http://192.168.139.128:8081/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id> <!-- 注意这里的名字必须和 认证信息中的id一致 -->
<name>User Project SNAPSHOTS</name>
<url>http://192.168.139.128:8081/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
3.2 配置认证信息
<servers>
<server>
<id>releases</id>
<username>admin</username>
<password>cqitjava666</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>cqitjava666</password>
</server>
</servers>
需要注意的是上下两处
id信息需要一致。
