Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。
1、查看可用的 Nexus3版本
访问 Nginx 镜像库地址: https://hub.docker.com/r/sonatype/nexus3/tags
可以通过 Sort by 查看其他版本的 nexus3,默认是最新版本 sonatype/nexus3:latest。
找到你自己要下载的版本。只需复制pull后面的名称即可。
2、创建映射目录
这里与以往不同,以前我们都是直接运行容器的。 这里因为文件目录权限问题,我们自己手动创建文件目录,并将文件权限修改一下。
#切换至root 用户 不同的系统不同的命令 我的是ubuntu
sudo su
#创建文件夹
mkdir -p /data/nexus/nexus-data
#放开权限
chmod 777 -R /data/nexus
#进入目录查看
cd /data/nexus
3、下载镜像并启动容器
docker run --restart=always -p 8081:8081 --name nexus -v /data/nexus/nexus-data:/nexus-data -d sonatype/nexus3:latest
解释:
--restart=always docker重启后容器自动重启
--name: 容器名
-v: 将容器内的目录映射至本地, 前面的路径为本机路径
-d: 镜像名
4、查看容器运行状态
- 命令行看状态:
docker ps 或者docker ps -a # -a显示所有容器,包括未运行的容器。 没有-a 只显示运行的容器
#如果发现没有启动成功,我们查看日志解决问题,查看日志命令:
docker logs -f 容器名
- 浏览器看效果
ip+port访问可直接看效果:
至此已经部署成功!
5、nexus设置及pom文件使用
- nexus默认登录账号为admin, 默认密码需要进入容器内部获取(红色框框内的是密码,不要搞错了! 取出密码后登录nexus):
docker exec -it nexus /bin/bash #进入容器
cat /nexus-data/admin.password #查看密码
- 登录并修改密码后,他会弹出一个框框,看下图:
这个选项是配置是否开启匿名访问, 默认是禁用的。 如果你开启的话,用户无需凭据即可从存储库中搜索、浏览和下载组件。个人建议: 如果是放在局域网的话可以启用,不用去配置maven的setting文件,如果是放在公网建议禁用。
- 设置代理为阿里仓库
按照下图一次点击:
进入后找到 Proxy->Remote storage将值替换为 http://maven.aliyun.com/nexus/content/groups/public/
后保存,如下图:
- pom文件引用
添加以下代码:
<repositories>
<!-- 配置nexus远程仓库 禁用了匿名访问 id需要和setting文件中一致 -->
<repository>
<id>nexus</id>
<name>Nexus Snapshot Repository</name>
<url>http://192.168.0.138:8081/repository/maven-public/
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
如果你开启了匿名访问的话现在已经配置好了,如果你禁用了匿名访问需要创建一个用户(或者直接用管理员用户但是不安全), 配置到maven的setting文件中:
</server>
配置完后更新一下setting文件即可正常使用nexus。
6、上传jar包
- 通过网页上传
上传之后点击 view it now可以查看jar包及引用代码。
- 代码提交&#xff0c;配置好maven的setting文件和项目的pom文件。当你的项目打包后&#xff1a;
mvn deploy
就可以将jar上传到nexus私服
以上就是docker搭建nexus私服的全部内容&#xff0c;如果还有其他不懂的可以添加右下角微信&#xff0c;欢迎骚扰&#xff01;
大家也可以点击我的gitee来获取我的其他项目源码。 拜拜&#xff01;