推荐个人Docker文章,讲的非常详细
【玩转Docker容器 1】Dockerd的详解及安装Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。利用Nexus你可以只在一个地方就能够完全控制访问 和部署在你所维护仓库中的每个Artifact。我们可以在局域网搭建一个maven私服,用来部署第三方公共构件或者作为远程仓库在该局域网的一个代理。
解释:Nexus就是Maven的私服仓库,一般大一点的公司都已自己的私有Maven库
1、我们从项目实际开发来看一些无法从外部仓库下载的组件(自定义的组件,未开源),例如内部的项目还要用的,这样我们就可以署到私服上,以便供其他依赖项目使用。
2、为了节省带宽和时间,在局域网内架设一个私有的仓库服务器,用其代理所有外部的远程仓库。当本地Maven项目需要下载构件时,先去私服请求,如果私服没有,则再去远程仓库请求,从远程仓库下载构件后,把构件缓存在私服上。这样,及时暂时没有Internet链接,由于私服已经缓存了大量构件,整个项目还是可以正常使用的。同时,也降低了中央仓库的负荷。
1.在实际开发中,项目中可能会用到第三方的jar、内部通讯的服务接口都会打入到公司的私服中。
2.自定义的jar包,或者SpringBoot的pom包,一些自己封装好的包打包到私有Maven中去,只供自己或者朋友使用(就比如你封装了个非常强大的代码自动生成器,或者微信和支付宝支付的封装,只需要稍微的配置就可以使用,这时你就可以打包到Maven私服中去,下次直接在pom或xml文件配置坐标就行了,只给自己或者公司或者朋友使用)
一定要是搭建了Docker的Linux环境哟,不知道的可以看我之前位置
输入:
docker pull sonatype/nexus3
注:将容器内部/var/nexus-data挂载到主机/root/nexus-data目录(8081:8081是Linux与Docker的端口映射)
docker run -d -p 8081:8081--name nexus -v /root/nexus-data:/var/nexus-data --restart=always sonatype/nexus3
关闭防火墙,访问http://ip:8081
Maven私服启动容器稍微比较慢,等待一会即可。
用户名或密码不正确,这个时候我们可以去admin.password文件中去看初始密码。
输入:(找到密码文件)
find / -name 'admin.password'
输入:
cat 输入上面查找的文件位置获取密码
那一串乱七八糟的就是密码。那他的登陆进去修改密码
再次登录,登录进去后他会默认让你修改用户名密码,注意俩个都是打新密码
一直下一步就好了
点击设置界面,选择Repositories,点击Create repository,如下图所示:
选择仓库类型,这里Maven有三种类型,分别是group、hosted、proxy。这里只演示hosted类型,所以选择Maven(hosted),如下图:
这里的仓库选择正确哟
输入了name,选择好了Storage,后移到底下选择创建
出现如图
已成功,忽略地下的docker为什么很慢的不一样,docker是之前创建的
在server标签里面加上你登录maven私服的用户名密码
有可能这个文件会有很多注释,忽略就好了,我截的屏没有
boot-tool
http://120.77.0.58:8081/repository/boot-tool/
org.apache.maven.plugins
maven-deploy-plugin
2.7
org.apache.maven.plugins
maven-source-plugin
2.2.1
package
jar
上传的位置记得要改,改成私有maven仓库的位置
私有仓库位置在:
在ider底下点击Terminai
如何引用呢,我这里创建了一个空的Maven项目
对比一下俩张图,只需在pom文件类要把name,id,版本对应,在引用远程仓库地址即可使用
代码
com.lijie
lijie-core-boot
2.0
mayikt
http://120.77.0.58:8081/repository/boot-tool/