以下图,在局域网部署了Nexus以后,能够缓存中央仓库的jar,开发者开发的二方库发布到Nexus上,局域网内的其余人也能够从Nexus下载这些二方库使用:
linux
本次实战是在Linux服务器上经过Docker安装Nexus3:git
apt-get update
apt-get install -y curl
curl -sSL https://get.docker.com | sh
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
mkdir -p /usr/local/work/nexus-data && chown -R 200 /usr/local/work/nexus-data
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版本;
3. 等待容器建立成功后,Nexus3即部署成功;github
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. 是否运行匿名访问,这里勾选上:
spring
在实际使用中,为了安全起见,不能让每一个用户使用admin帐号,您能够先建立角色,按实际须要给角色增长各类权限,再建立此角色下的帐号:docker
至此,Nexus3部署完毕,接下来验证Nexus可否提供jar缓存的功能;shell
接下来验证的是Nexus缓存中央仓库jar包的能力,看看有了Naxus,可否让咱们在开发和构建过程当中更快的下载到所需jar;缓存
电脑A和电脑B上的maven目录下的conf/settings.xml文件都要作如下修改:安全
<server> <id>maven-central</id> <username>bolingcavalry</username> <password>888888</password> </server>
<mirror> <id>maven-central</id> <mirrorOf>*</mirrorOf> <url>http://192.168.50.75:8081/repository/maven-central/</url> </mirror>
在A电脑上编译开源项目spring-cloud-alibaba,此时Nexus上没有缓存任何jar包,因此编译速度会很慢,由于全部依赖jar都要从中央仓库下载,咱们来试试:服务器
wget https://github.com/alibaba/spring-cloud-alibaba/archive/v2.1.1.RELEASE.tar.gz
tar -zxvf v2.1.1.RELEASE.tar.gz
cd spring-cloud-alibaba-2.1.1.RELEASE/
mvn clean compile -U -DskipTests
在B电脑上作一样的操做,此时Nexus上已经缓存了编译所需的jar包,因此整个编译过程应该明显变快,最终操做结果以下图所示,仅用了1分零6秒:
至此,Ubuntu上部署和体验Nexus3的实战就完成了,若是您正在寻求简单快捷的Nexus部署方案,但愿本文能给您一些参考。curl