国内服务器
亚洲服务器
欧洲服务器
北美洲服务器
南美洲服务器
大洋洲服务器
非洲服务器

首页>>服务器

​如何在Linux服务器通过Docker搭建Nexus私服

发表时间:2022-05-31 09:01:25

这篇文章是关于如何通过Linux中的Docker构建Nexus私有服务的,服务器桂哥网络觉得很实用,就分享给大家参考,跟着桂哥网络看了一下。

如何通过服务器的Docker构建Nexus私有服务

一、安装Nexus

1.创建存储数据的位置

#转到目录。请自便

cd/srv

#创建文件夹

mkdirnexus-数据

#给予权限,否则启动会报错,没有操作权限

Chmod777nexus-data2,启动

只需执行以下命令,镜像就会自动被拉起并启动

docker run-d-p 8081:8081-name nexus-v/SRV/nexus-data :/nexus-data-restart=alwaysonatype/nexus 3。通过docker log-f nexus检查启动日志。当启动的Sonatype Nexus OSS出现时,表示启动成功。此时,通过http://ip:8081。

点击右上角的登录即可登录,账号为admin,需要在镜像中查看密码

#去镜子前

dockersec-itnexusbash

#检查密码,登录框会提示路径,然后复制。成功登录后,系统会要求您更改密码

此时,cat/nexus-data/admin-password启动。进入首页后,点击左侧菜单栏中的浏览,即可查看您所拥有的仓库

二、Nexus仓库

1、仓库类型

Nexus有四个仓库和四种仓库类型

仓库

仓库名称描述maven-centralmaven中央图书馆。默认情况下,jarmaven-public warehouse of jarmaven-releases private library distribution jarmaven-snapshot private library snapshot(debug version)是从https://repo1.maven.org/maven2/,提取的,上述三个仓库结合起来为外部世界提供服务。b和type在本地maven基本配置设置中使用。

类型描述组(仓库组类型)用于方便开发人员设置自己的托管仓库(托管类型),并发布内部项目仓库(内部开发人员,为存储而发布的存储库)代理(代理类型)从远程中心仓库(您可以单击相应仓库的“配置”选项卡下的“远程存储位置”属性的值,即代理的远程仓库的路径)虚拟(虚拟类型)虚拟仓库(这基本上是不需要的,重点使用上述三个仓库)2、拉取jar包流程

Maven可以直接从主机仓库或代理仓库下载组件,而代理仓库间接从远程仓库下载并缓存组件。为了方便起见,Maven可以从仓库组下载组件,但是仓库组没有实际的内容(在下图中用虚线表示,它将转向包含的主机仓库或代理仓库来获取实际的组件内容)

3、创建仓库

经过上面的解释,我们已经对仓库有了一个了解。接下来,我们创建仓库,分为代理仓库、托管仓库和仓库组。点击主页上的小螺丝,然后选择

Repositories进入仓库管理列表,然后就可以开始创建我们的仓库啦,选择仓库类型的时候一定要选择maven2

a、proxy代理仓库

我们使用阿里的中央仓库

b、hosted宿主仓库

这里可以创建releasessnapshot类型的仓库,这里就演示一种

c、group仓库组

三、项目配置

前两章走完我们已经在Linux服务器部署好了nexus并且创建好了我们的仓库,接下来我们就来试着在项目中配置

1、创建一个Maven项目

为了演示,就随便创建个工具类玩,以下是目录结构

2、pom文件

这里为了演示我就配了release仓库,实际上应该同时要配置snapshot仓库,maven会判断版本后面是不是带了-SNAPSHOT,如果带了就发布到snapshots仓库,否则发布到release仓库

<?xmlversion="1.0"encoding="UTF-8"?>
<projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.gjing</groupId>
<artifactId>demo</artifactId>
<version>1.0</version>
<name>demo</name>
<description>DemoprojectforSpringBoot</description>
<properties>
<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<distributionManagement>
<repository>
<!--ID可以随便写,但是要与maven的setting文件中一致-->
<id>releases</id>
<!--指向仓库类型为hosted(宿主仓库)的储存类型为Release的仓库---->
<url>http://你nexus仓库的IP:8081/repository/me-release/</url>
</repository>
</distributionManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
</plugin>
</plugins>
</build>
</project>

3、maven配置setting文件

id一定要和项目pom文件中的一致

<servers>
<server>
<id>releases</id><!--对应项目pom文件中设置的-->
<username>admin</username>
<password>admin123</password>
</server>
</servers>

四、发布

如果使用的是IDEA开发工具可以直接在右边工具栏Maven工具点击deploy,也可以直接在命令行进入本项目根目录进行mvn deploy


这时nexus私服上也会出现我们的jar包


到此就发布成功啦

五、使用

让maven项目使用nexus作为远程仓库有两种方式,第一种是在项目的pom.xml中进行更改,让单个项目使用nexus仓库;另一种是通过修改maven的配置文件settings.xml进行更改,让所有项目都使用nexus仓库。我们这里采取第二种,只需要setting.xml就可以了。还有就是拉取jar的私服仓库地址只要写我们的仓库组就ok,因为在创建这个组的时候,里面已经包含了其它三个仓库

1、settings.xml文件

在maven的settings文件中找到mirrors,加上我们组仓库的mirror,url填写我们创建的组地址即可,id、name可以随便填写,mirrorOf可以和我写一样的

<mirrors>
<mirror>
<id>mynexus</id>
<name>myselfnexusrepository</name>
<url>http://xxx:8081/repository/me-group/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>

2、验证

只需要在其他项目中pom文件引入即可,成功引入且在项目中可以正常使用我们刚刚定义的工具类

感谢各位的阅读!关于“如何在Linux服务器通过Docker搭建Nexus私服”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


上一篇 下一篇
最新文章

如何提高云服务器的安全系数

香港独立IP空间有什么优势

香港空间影响百度收录吗

为啥要租用美国VPS

VPS的缺点有哪些

香港vps作用在哪里

VPS的优点有哪些

外贸网站为啥选择美国vps

VPS能建多少个网站

VPS要如何选择位置

相关文章

内嵌MPLS的发展与利用

菲律宾服务器租用的价格?菲律宾服务器托管怎

堡垒机连接的服务器是虚拟机吗 堡垒机ip连接不上怎样办

大型医疗保健提供商的CISO是如何通过云计算转型增强网络安全的

容器编排平台的多租户持久化存储管理:使用Kubernetes的VolumeSnapshot

怎么选择合适的香港服务器电商平台

vps拨号服务器租赁有什么优势

vps不收费:不要钱的vps试用要考虑哪些事项

如何映射云主机上的硬盘

日本服务器IP被国内屏蔽的原因是什么

X

截屏,微信识别二维码

微信号:muhuanidc

(点击微信号复制,添加好友)

打开微信

微信号已复制,请打开微信添加咨询详情!