心血来潮,想自己搭个项目试试,锻炼下架构相关的东东。其中的一步就是搭建maven私服,方便自己部署私包。
查找nexus3镜像
docker search nexus3
拉取nexus3镜像
docker pull docker.io/sonatype/nexus3
查看镜像
docker images
运行nexus容器
docker run -id --privileged=true --name=nexus3 --restart=always -p 8081:8081 -v /kichun/nexus3/nexus-data:/var/nexus-data 6e9721ad473a(这个是容器id或名称)
解释:
-id 创建守护式容器
--privileged=true 授予root权限(挂载多级目录必须为true,否则容器访问宿主机权限不足)
--name=名字 给你的容器起个名字
-p 宿主机端口:容器端口映射
-v 宿主机目录:容器目录 目录挂载
注意:
运行容器后访问主机+配置的宿主机映射端口无反应时,请稍等几分钟(视配置时间长短不一),等待nexus3完成初始化才能访问成功
访问nexus3
登录
默认admin密码admin123
查看仓库
在项目中配置私服
拷贝public仓库地址
配置到你本地maven的settings文件
注意:是public group仓库地址而不是releases或snapshots仓库,public默认包含了这两个仓库
dev
local-nexus
http://192.168.3.128:8081/repository/maven-public/
true
true
dev
配置maven settings文件的服务器用户名密码
注意:id为私服中releases和snapshots仓库名,必须一致
maven-releases
admin
admin123
maven-snapshots
admin
admin123
在项目父pom文件中配置部署环境,注意id及URL必须与nexus仓库对应
maven-releases
Nexus Release Repository
http://192.168.3.128:8081/repository/maven-releases/
maven-snapshots
Nexus Snapshot Repository
http://192.168.3.128:8081/repository/maven-snapshots/
重新打开项目,对需要的模块进行deploy
在nexus中查看上传的jar