Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。

1、查看可用的 Nexus3版本

可以通过 Sort by 查看其他版本的 nexus3,默认是最新版本  sonatype/nexus3:latest。

nexus docker 部署 docker安装nexus3_java

找到你自己要下载的版本。只需复制pull后面的名称即可。

2、创建映射目录

这里与以往不同,以前我们都是直接运行容器的。 这里因为文件目录权限问题,我们自己手动创建文件目录,并将文件权限修改一下。



#切换至root 用户 不同的系统不同的命令 我的是ubuntu
sudo su
#创建文件夹
mkdir -p /data/nexus/nexus-data 
#放开权限
chmod 777 -R /data/nexus
#进入目录查看
cd /data/nexus



nexus docker 部署 docker安装nexus3_linux_02

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: 镜像名



nexus docker 部署 docker安装nexus3_linux_03

4、查看容器运行状态

  • 命令行看状态:

查看日志命令



docker ps 或者docker ps -a  # -a显示所有容器,包括未运行的容器。 没有-a 只显示运行的容器
 
#如果发现没有启动成功,我们查看日志解决问题,查看日志命令:
docker logs -f 容器名



nexus docker 部署 docker安装nexus3_linux_04

  • 浏览器看效果

ip+port访问可直接看效果:

nexus docker 部署 docker安装nexus3_maven_05

至此已经部署成功!

5、nexus设置及pom文件使用

  • nexus默认登录账号为admin, 默认密码需要进入容器内部获取(红色框框内的是密码,不要搞错了! 取出密码后登录nexus):
docker exec -it nexus /bin/bash #进入容器
cat /nexus-data/admin.password  #查看密码



nexus docker 部署 docker安装nexus3_java_06

  • 登录并修改密码后,他会弹出一个框框,看下图:

nexus docker 部署 docker安装nexus3_docker_07

这个选项是配置是否开启匿名访问, 默认是禁用的。 如果你开启的话,用户无需凭据即可从存储库中搜索、浏览和下载组件。个人建议: 如果是放在局域网的话可以启用,不用去配置maven的setting文件,如果是放在公网建议禁用。

  • 设置代理为阿里仓库

按照下图一次点击:

nexus docker 部署 docker安装nexus3_maven_08

进入后找到 Proxy->Remote storage将值替换为  http://maven.aliyun.com/nexus/content/groups/public/ 后保存,如下图:

nexus docker 部署 docker安装nexus3_java_09

  • pom文件引用

添加以下代码:



<repositories>
		<!-- 配置nexus远程仓库 禁用了匿名访问 id需要和setting文件中一致  -->
		<repository>
			<id>nexus</id>
			<name>Nexus Snapshot Repository</name>
			<url>http://192.168.0.138:8081/repository/maven-public/</url>
			<releases>
				<enabled>true</enabled>
			</releases>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
	      </repository>
         </repositories>



如果你开启了匿名访问的话现在已经配置好了,如果你禁用了匿名访问需要创建一个用户(或者直接用管理员用户但是不安全), 配置到maven的setting文件中:



Java



<server>
      <id>这个要和pom文件中的id对应</id>
      <username>你的账号</username>
      <password>你的密码</password>
   </server>



配置完后更新一下setting文件即可正常使用nexus。

6、上传jar包

  • 通过网页上传

nexus docker 部署 docker安装nexus3_maven_10

上传之后点击 view  it now可以查看jar包及引用代码。

nexus docker 部署 docker安装nexus3_linux_11

  • 代码提交,配置好maven的setting文件和项目的pom文件。当你的项目打包后:
mvn deploy



就可以将jar上传到nexus私服

以上就是docker搭建nexus私服的全部内容,如果还有其他不懂的可以添加右下角微信,欢迎骚扰!