前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ubuntu部署和体验Nexus3

Ubuntu部署和体验Nexus3

作者头像
程序员欣宸
发布2020-03-18 17:21:55
1.3K0
发布2020-03-18 17:21:55
举报
文章被收录于专栏:实战docker实战docker

关于Nexus

如下图,在局域网部署了Nexus之后,可以缓存中央仓库的jar,开发的二方库发布到Nexus上,局域网内的其他人也可以从Nexus下载这些二方库使用:

在这里插入图片描述
在这里插入图片描述

环境信息

本次实战是在Linux服务器上通过Docker安装Nexus3:

  1. 操作系统:Ubuntu 18.04.3 LTS
  2. Docker:19.03.5
  3. Nexus:3.19.1

Ubuntu安装docker

  1. apt更新:
代码语言:javascript
复制
apt-get update
  1. 安装curl:
代码语言:javascript
复制
apt-get install -y curl
  1. 安装docker:
代码语言:javascript
复制
curl -sSL https://get.docker.com | sh
  1. 安装完成后执行命令docker version检查docker是否正常;

部署Nexus3

  1. 创建工作目录并赋权限:
代码语言:javascript
复制
mkdir -p /usr/local/work/nexus-data && chown -R 200 /usr/local/work/nexus-data
  1. 下载Nexus镜像并创建容器:
代码语言:javascript
复制
docker run -d \
-p 8081:8081 \
--name nexus \
-v /usr/local/work/nexus-data:/nexus-data \
sonatype/nexus3:3.19.1

上述命令的参数较多,有几点需要注意: a. 容器的8081端口映射到宿主机的8081端口; b. 容器名为nexus; c. 容器的/nexus-data/目录被映射到宿主机的/usr/local/work/nexus-data/; d. 镜像是sonatype官方的3.19.1版本;

  1. 等待容器创建成功后,Nexus3即部署成功;

登录和操作Nexus3

  1. 在控制台执行以下命令,即可获得Nexus3的初始密码:
代码语言:javascript
复制
echo `docker exec nexus cat /nexus-data/admin.password`

我这里得到的是2c9c5399-d0da-48ec-9050-dc4f43cede10 2. 点击下图右上角红框中的Sign in,进入登录页面:

在这里插入图片描述
在这里插入图片描述

3. 登录页面如下图,账号admin,密码是刚才获取的2c9c5399-d0da-48ec-9050-dc4f43cede10:

在这里插入图片描述
在这里插入图片描述

4. 登录成功会提示修改密码,如下图,请修改:

在这里插入图片描述
在这里插入图片描述

5. 是否运行匿名访问,这里勾选上:

在这里插入图片描述
在这里插入图片描述

角色和账号

在实际使用中,为了安全起见,不能让每个用户使用admin账号,您可以先创建角色,按实际需要给角色增加各种权限,再创建此角色下的账号:

  1. 点击下图红框中的按钮,进入设置页面:
在这里插入图片描述
在这里插入图片描述
  1. 下图红框中是角色管理页面的链接,您可以按照实际情况创建角色:
在这里插入图片描述
在这里插入图片描述
  1. 这里为了简化操作就不新建角色了,而是创建一个管理员角色的账号bolingcavalry,操作如下图所示:
在这里插入图片描述
在这里插入图片描述

至此,Nexus3部署完毕,接下来验证Nexus能否提供jar缓存的功能;

准备两台电脑验证Nexus服务

接下来验证的是Nexus缓存中央仓库jar包的能力,看看有了Nexus,能否让我们在开发和构建过程中更快的下载到所需jar;

  1. 另外准备两台电脑,分别是A电脑和B电脑,用来验证刚刚部署的Nexus3可以缓存中央仓库的jar包(您也可以用虚拟机创建两台电脑);
  2. A、B两台电脑都已经装好了JDK8和Maven3;
  3. 如下图,在仓库列表页面,点击下图红框位置,可以得到maven-central仓库的地址http://192.168.50.75:8081/repository/maven-central/:
在这里插入图片描述
在这里插入图片描述

修改两台电脑的maven配置文件

电脑A和电脑B上的maven目录下的conf/settings.xml文件都要做以下修改:

  1. 找到servers节点,增加以下内容:
代码语言:javascript
复制
<server>
 <id>maven-central</id>
 <username>bolingcavalry</username>
 <password>888888</password>
</server>
  1. 找到mirrors节点,增加以下内容,其中url的内容就是前面得到的maven-central仓库地址:
代码语言:javascript
复制
<mirror>
 <id>maven-central</id>
 <mirrorOf>*</mirrorOf>
 <url>http://192.168.50.75:8081/repository/maven-central/</url>
</mirror>

在A电脑上编译构建项目(应该很慢)

在A电脑上编译开源项目spring-cloud-alibaba,此时Nexus上没有缓存任何jar包,所以编译速度会很慢,因为所有依赖jar都要从中央仓库下载,我们来试试:

  1. 登录A电脑,下载spring-cloud-alibaba的2.1.1.RELEASE归档包:
代码语言:javascript
复制
wget https://github.com/alibaba/spring-cloud-alibaba/archive/v2.1.1.RELEASE.tar.gz
  1. 解压下载的文件:
代码语言:javascript
复制
tar -zxvf v2.1.1.RELEASE.tar.gz
  1. 进入解压后的目录:
代码语言:javascript
复制
cd spring-cloud-alibaba-2.1.1.RELEASE/
  1. 编译:
代码语言:javascript
复制
mvn clean compile -U -DskipTests
  1. 编译完成,如下图红框所示,本次编译耗时9分27秒:
在这里插入图片描述
在这里插入图片描述
  1. 去Nexus网页上看看,如下图,此时已经缓存了不少jar:
在这里插入图片描述
在这里插入图片描述

在B电脑上编译构建项目(应该很快)

在B电脑做同样的操作,此时Nexus上已缓存了编译所需的jar包,所以整个编译过程应该明显变快,最终操作结果如下图所示,仅用了1分零6秒:

在这里插入图片描述
在这里插入图片描述

至此,Ubuntu上部署和体验Nexus3的实战就完成了,如果您正在寻求简单快捷的Nexus部署方案,希望本文能给您一些参考。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关于Nexus
  • 环境信息
  • Ubuntu安装docker
  • 部署Nexus3
  • 登录和操作Nexus3
  • 角色和账号
  • 准备两台电脑验证Nexus服务
  • 修改两台电脑的maven配置文件
  • 在A电脑上编译构建项目(应该很慢)
  • 在B电脑上编译构建项目(应该很快)
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档