美文网首页
Ubuntu部署和体验Nexus3

Ubuntu部署和体验Nexus3

作者: 程序员欣宸 | 来源:发表于2020-10-01 10:36 被阅读0次

关于Nexus

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


在这里插入图片描述

环境信息

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

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

安装docker

  1. apt更新:
apt-get update
  1. 安装curl:
apt-get install -y curl
  1. 安装docker:
curl -sSL https://get.docker.com | sh
  1. 安装完成后,检查docker是否正常:
root@hedy:~# docker version
Client: Docker Engine - Community
 Version:           19.03.5
 API version:       1.40
 Go version:        go1.12.12
 Git commit:        633a0ea838
 Built:             Wed Nov 13 07:29:52 2019
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.5
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.12
  Git commit:       633a0ea838
  Built:            Wed Nov 13 07:28:22 2019
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.10
  GitCommit:        b34a5c8af56e510852c35414db4c1f4fa6172339
 runc:
  Version:          1.0.0-rc8+dev
  GitCommit:        3e425f80a8c931f88e6d94a8c831b9d5aa481657
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

部署Nexus3

  1. 创建工作目录并赋权限:
mkdir -p /usr/local/work/nexus-data && chown -R 200 /usr/local/work/nexus-data
  1. 下载Nexus镜像并创建容器:
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. 容器名为<font color="blue">nexus</font>;
c. 容器的<font color="blue">/nexus-data/</font>目录被映射到宿主机的<font color="blue">/usr/local/work/nexus-data/</font>;
d. 镜像是sonatype官方的<font color="blue">3.19.1</font>版本;

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

登录和操作Nexus3

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

我这里得到的是<font color="blue">2c9c5399-d0da-48ec-9050-dc4f43cede10</font>

  1. 点击下图右上角红框中的<font color="blue">Sign in</font>,进入登录页面:


    在这里插入图片描述
  2. 登录页面如下图,账号<font color="blue">admin</blue>,密码是刚才获取的<font color="blue">2c9c5399-d0da-48ec-9050-dc4f43cede10</blue>:


    在这里插入图片描述
  3. 登录成功会提示修改密码,如下图,请修改:


    在这里插入图片描述
  4. 是否运行匿名访问,这里勾选上:


    在这里插入图片描述

角色和账号

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

  1. 点击下图红框中的按钮,进入设置页面:


    在这里插入图片描述
  2. 下图红框中是角色管理页面的链接,您可以按照实际情况创建角色:


    在这里插入图片描述
  3. 这里为了简化操作就不新建角色了,而是创建一个管理员角色的账号<font color="blue">boling_cavalry</font>,操作如下图所示:


    在这里插入图片描述

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

准备两台电脑验证Nexus服务

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

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

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

电脑A和电脑B上的maven目录下的<font color="blue">conf/settings.xml</font>文件都要做以下修改:

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

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

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

  1. 登录A电脑,下载<font color="blue">spring-cloud-alibaba</font>的2.1.1.RELEASE归档包:
wget https://github.com/alibaba/spring-cloud-alibaba/archive/v2.1.1.RELEASE.tar.gz
  1. 解压下载的文件:
tar -zxvf v2.1.1.RELEASE.tar.gz
  1. 进入解压后的目录:
cd spring-cloud-alibaba-2.1.1.RELEASE/
  1. 编译:
mvn clean compile -U -DskipTests
  1. 编译完成,如下图红框所示,本次编译耗时<font color="blue">9分27秒</font>:


    在这里插入图片描述
  2. 去Nexus网页上看看,如下图,此时已经缓存了不少jar:


    在这里插入图片描述

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

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


在这里插入图片描述

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

https://github.com/zq2599/blog_demos

相关文章

  • Ubuntu部署和体验Nexus3

    关于Nexus 如下图,在局域网部署了Nexus之后,可以缓存中央仓库的jar,开发者开发的二方库发布到Nexus...

  • Kubernetes部署Nexus3

    Kubernetes部署Nexus3 重点参考kubernetes集群:nexus搭建docker私有仓库及使用 ...

  • Maven学习----->Ubuntu下搭建Nexus私服

    环境 Android Studio、Ubuntu16.04 前提 1、安装Java8;2、安装Nexus3 下载路...

  • docker安装Nexus3.x

    Nexus3可以支持docker/nuget/Maven等仓库,下面使用docker方式部署 $ mkdir /s...

  • Nexus3 Docker安装部署使用

    title: Nexus3 Docker安装部署使用tags: 新建,模板,小书 使用官方Docker镜像 拉取镜...

  • Django部署

    参考: Ubuntu 16.04 Django安装和配置 虚拟环境 部署Web App Django 部署(Ngi...

  • VMware Workstation 中安装Ubuntu

    最近要在Ubuntu中部署openstack,为了节省空间和内存,最终选择了Ubuntu服务器。看了很多前辈和大佬...

  • Kubernetes部署Nexus3

    之前一直直接使用docker run的形式部署各种服务,最近把新购置的几台服务器组了个kubernetes集群,趁...

  • 服务器运维

    ubuntu查找命令 部署Python代码 ubuntu更新源设置Ubuntu16.04安装mongodb mon...

  • Vapor 部署 webApp

    Vapor 部署webApp 这里是使用Ubuntu进行部署的。 这里和Vapor没有太大关系、主要是Linux的...

网友评论

      本文标题:Ubuntu部署和体验Nexus3

      本文链接:https://www.haomeiwen.com/subject/mzemuktx.html