Nexus3.x安装及使用
一、Windows安装Docker
1.安装/升级Docker客户端
必备条件
若要在 Windows 10 上运行容器,需要以下各项:
- 一台运行 Windows 10 专业版或企业版(含周年更新(版本1607)或更高版本)的物理计算机系统。
- 应启用hyper-v 。
如果你的是64位Windows 10专业版或者企业版,那么推荐使用Docker for Windows.此时直接从Docker官方网站下载最新的Docker for Windows的安装包即可:https://docs.docker.com/docker-for-windows/install/
该网站需要注册后下载,注册后即可下载.
安装
1.开启 Hyper-V
在Windows10中Hyper-V虚拟机管理功能默认是关闭的,我们可以通过以下方法启用Hyper-V虚拟机管理器。
找到控制面板
选择
“确定”后,会有一个应用配置的过程,最后提示重启系统。重启之后就可以在Win10开始菜单的“Windows管理工具”下看到Hyper-V管理器了。如图:
从任务管理器->性能界面 也可以看到开启了虚拟化
2.安装docker
看了网上的教程,Windows选择第二个我尝试,在后面的命令输入中会提示了Linux命令,所以果断放弃了这个选择,这个在后面安装后也可以选择,下面我们有截图,点击ok安装即可.
- 安装后切换容器(切换windows和Linux容器)
3.镜像加速
这里我们使用阿里云镜像加速:
https://cr.console.aliyun.com 阿里云镜像容器服务,登录后选择镜像中心–>镜像加速器–>复制加速器地址然后进行以下操作
- 针对安装了Docker for Windows的用户,您可以参考以下配置步骤:
- 在系统右下角托盘图标内右键菜单选择 Settings,打开配置窗口后左侧导航菜单选择 Docker Daemon。编辑窗口内的JSON串,填写下方加速器地址:
{
“registry-mirrors”: [“https://xxxxxx.aliyuncs.com”]
}- 编辑完成后点击 Apply 保存按钮,等待Docker重启并应用配置的镜像加速器。
4.注意
- Docker for Windows 有两种运行模式,一种运行Windows相关容器,一种运行传统的Linux容器。同一时间只能选择一种模式运行。
二、Nexus安装
1.Nexus介绍
Nexus 是Maven仓库管理器,如果你使用Maven,你可以从Maven中央仓库 下载所需要的构件(artifact),但这通常不是一个好的做法,你应该在本地架设一个Maven仓库服务器,在代理远程仓库的同时维护本地仓库,以节省带宽和时间,Nexus就可以满足这样的需要。此外,他还提供了强大的仓库管理功能,构件搜索功能,它基于REST,友好的UI是一个extjs的REST客户端,它占用较少的内存,基于简单文件系统而非数据库。这些优点使其日趋成为最流行的Maven仓库管理器。除此之外,Nexus还可以管理Docker镜像
- 通常的做法:本地仓库没有,则去中央仓库下载
- 搭建私库的做法:本地仓库没有,再去私服下载,私服没有,再去中央仓库下载
2.docker安装Nexus
1.查找nexus镜像,选择sonatype/nexus3 进行安装
docker search nexus3
2、拉取nexus3镜像(阿里云镜像加速会快一些)
docker pull sonatype/nexus3
3、查看镜像
docker images
4.运行 nexus3
docker run -d --name nexus --restart=always -p 8081:8081 sonatype/nexus3
5、查看所有容器
docker ps -a
6.登陆网址查看
http://localhost:8081/ 默认
7.查询登录密码,修改新密码
现在默认名是admin 默认密码会提示我们去找
操作命令
docker ps -a
docker exec -it b068380a83ce /bin/bash
cd nexus-data
cat admin.password
exit 退出容器
8.修改密码时会出现一个弹窗
之前的版本默认情况下,Nexus私服的仓库是允许匿名(anonymous)访问的,也就是任何开发者只要知道你的仓库地址,都可以远程依赖你发布到仓库的库。既然是私服,可能有些库不想要给其他人访问,可以通过设置凭据访问来限制用户访问远程依赖库,最简单的一种就是用户名密码凭据访问。
现在的话我们不要去勾选这个,当然即使勾选了也可以修改。
- 第一步:打开远程仓库,使用有配置管理的账户登录,打开设置页面;
- 第二步:定位到“Security-Anonymous”,将“Allow anonymous users to access the server”勾选去掉,保存更改。
下面我们会有介绍如何添加用户
三、web界面的使用
1.Browse可以查看当前有多少仓库,搭建好的Nexus,默认会带有一些maven仓库,一般使用这些仓库就足够了
2.默认仓库说明
maven-central:maven中央库,默认从https://repo1.maven.org/maven2/拉取jar
maven-releases:私库发行版jar,<- 初次安装请将Deployment policy设置为Allow redeploy ->
maven-snapshots:私库快照(调试版本)jar
maven-public:仓库分组,把上面三个仓库组合在一起对外提供服务,在本地maven基础配置settings.xml或项目pom.xml中使用
3.仓库类型
nexus的仓库类型分为以下四种:
group:这是一个仓库聚合的概念,用户仓库地址选择Group的地址,即可访问Group中配置的,用于方便开发人员自己设定的仓库。maven-public就是一个Group类型的仓库,内部设置了多个仓库,访问顺序取决于配置顺序,3.x默认Releases,Snapshots,Central,当然你也可以自己设置
hosted:宿主,本地仓库,通常我们会部署自己的构建到这一类仓库。私有仓库,内部项目的发布仓库,专门用来存储我们自己生成的jar文件
proxy:代理仓库,从远程中央仓库中寻找数据的仓库(可以点击对应的仓库的Configuration页签下Remote Storage属性的值即被代理的远程仓库的路径),如可配置阿里云maven仓库
virtual:虚拟
Central:中央仓库
4.配置阿里云仓库
Nexus的maven-group的默认查找方式为:maven-releases --> maven-snapshots --> maven-central,我们在中间再加一个阿里云仓库,加快访问速度。
选择proxy类型
信息填写
仓库名字:随便填写
阿里云远程maven仓库地址:http://maven.aliyun.com/nexus/content/groups/public/
其他选项:默认即可
修改maven-public中的仓库引用及顺序:
至此,配置完毕!我们在maven使用maven-public仓库地址的时候,会按照如下顺序访问:本地仓库 --> 私服maven-releases --> 私服maven-snapshots --> 远程阿里云maven仓库 --> 远程中央仓库。
接下来说明maven如何配置使用私服。
四、配置用户
- 定位到“Security-Roles”,新建一个可以访问仓库的角色
系统自己带的访问角色我们也可以自己添加修改权限,新建一个角色
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-t7MjmWCd-1577283375445)(https://cdn.jsdelivr.net/gh/qixizx/cdn/img/blog_file/2019/12/25/访问下载角色.png)]
- 配置角色,添加可访问的仓库,保存角色信息
- 定位到“Security-Users”,添加用户
- 给新建的用户赋予刚才新建的角色,保存用户。
五、Maven配置使用Nexus
maven配置私服有两种方式
- setting.xml:该文件配置的是全局模式
- pom.xml:该文件的配置的是项目独享模式
- 若pom.xml和setting.xml同时配置了,以pom.xml为准
方法一、配置pom设置
Maven配置私服下载依赖
- setting.xml文件配置
这个时候不需要再配置pom.xml文件,即可使用私服下载jar依赖包
<mirrors>
<mirror