用Docker搭建Nexus私服
- 搜索Nexus
- 在docker容器中加载Nexus镜像
- 发布本地项目到Nexus私服
- 配置连接方式
- 发布指令
- 打源码包上传插件
搜索Nexus
在我们打算使用Nexus时,我们先搜索一下docker景象仓库中现成的Nexus镜像。
docker search nexus
- 1
其展示的结果如下:
[root@localhost ~]# docker search nexus
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/sonatype/nexus Sonatype Nexus 379 [OK]
docker.io docker.io/sonatype/nexus3 Sonatype Nexus Repository Manager 3 337 docker.io docker.io/sonatype/docker-nexus3 Sonatype Nexus 3 [DEPRECATED] 27 [OK] docker.io docker.io/clearent/nexus 21 docker.io docker.io/baselibrary/nexus ThoughtWorks Docker Image: nexus 7 [OK] docker.io docker.io/accenture/adop-nexus ADOP Nexus 5 [OK] docker.io docker.io/bradbeck/nexus-https Dockerized version of Nexus Repo Manager 3... 5 [OK] docker.io docker.io/frekele/nexus docker run --rm --name nexus -p 8081:8081 ... 4 [OK] docker.io docker.io/shifudao/nexus3 clone from nexus3 image but based from ope... 3 [OK] docker.io docker.io/sonatype/nexus-iq-server Sonatype Nexus IQ Server 3 docker.io docker.io/cavemandaveman/nexus Sonatype Nexus container 2 [OK] docker.io docker.io/fabric8/nexus 2 [OK] docker.io docker.io/madmuffin/nexus3 Sonatype Nexus3 Milestone7 docker image 2 [OK] docker.io docker.io/mcreations/jenkins-with-nexus-support Jenkins image with correct SSL config for ... 1 [OK] docker.io docker.io/openshiftdemos/nexus Sonatype Nexus with JBoss Enterprise repos... 1
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
在这里,被大家使用频率越高的版本往往STARS指数越高,排位也就越靠前,这样,我们直接拉取第一个来使用就可以了。
docker pull docker.io/sonatype/nexus
- 1
如下:
[root@localhost ~]# docker pull docker.io/sonatype/nexus
Using default tag: latest
Trying to pull repository docker.io/sonatype/nexus ...
latest: Pulling from docker.io/sonatype/nexus
af4b0a2388c6: Pull complete
e2c659f5d884: Pull complete
37f6e458506e: Pull complete
b8ce98aa6771: Pull complete
90969e21cd0f: Pull complete
Digest: sha256:90f8ec0dadf5fef6bab1269a96f4e71583dadb366dde3cc664c599da5e1421e7
[root@localhost ~]# docker run -d -p 8081:8081 --name nexus docker.io/sonatype/nexus
5f23e18df895901f33a7abf01870984a65257f977e27266d6d319706b6e06719
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
在docker容器中加载Nexus镜像
指令如下:
docker run -d -p 8081:8081 --name nexus docker.io/sonatype/nexus
- 1
运行结果:
[root@localhost ~]# docker run -d -p 8081:8081 --name nexus docker.io/sonatype/nexus
5f23e18df895901f33a7abf01870984a65257f977e27266d6d319706b6e06719
- 1
- 2
在Nexus运行时,这可能需要等待一段很短的时间,我们可以通过查看Nexus的日志来了解Nexus的运行情况,其指令如下:
docker logs -f nexus
- 1
当docker运行起来后,我们就可以在浏览器中进行访问了,访问地址为:
http://192.168.44.128:8081/nexus/#welcome
- 1
其中192.168.44.128为虚拟机所对应的ip地址,大家在这里填写自己所在的ip地址即可。
运行的界面如下:
当看到这里时,这说明我们的Nexus已经正常运行,可以进行使用了。
如果想查看与Nexus相关的更多docker镜像信息,可以到这里去查看Nexus的docker镜像官方文档。
https://hub.docker.com/r/sonatype/nexus/
- 1
在这里,docker的默认账号为admin
,默认密码为admin123
,直接将其拿来就可以使用了。
发布本地项目到Nexus私服
配置连接方式
配置Maven的settings.xml
<server><id>user-release</id> <username>admin</username> <password>admin123</password> </server> <server> <id>user-snapshots</id> <username>admin</username> <password>admin123</password> </server>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
配置项目的pom.xml
<distributionManagement><repository><id>user-release</id> <name>user release resp</name> <url>http://192.168.44.128:8081/nexus/content/repositories/releases/</url> </repository> <snapshotRepository> <id>user-snapshots</id> <name>user snapshots resp</name> <url>http://192.168.44.128:8081/nexus/content/repositories/snapshots/</url> </snapshotRepository> </distributionManagement>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
该连接地址在Nexus的页面中就可以找到,如:
直接来拿复制粘贴就可以了。
发布指令
在项目中,运行下列指令将项目发布到私服中
mvn deploy
- 1
或点击IDEA中的deploy快捷指令
运行结果:
Downloading from user-snapshots: http:www.255055.cn/ //192.168.44.128:8081/nexus/content/repositories/snapshots/com/mycompany/linear-table/2.0-SNAPSHOT/maven-metadata.xml Uploading to user-snapshots: http://192.168.44.128:8081/nexus/content/repositories/snapshots/com/mycompany/linear-table/2.0-SNAPSHOT/linear-table-2.0-20180409.124308-1.jar Uploaded to user-snapshots: http://www.douniu178.com 192.168.44.128:8081/nexus/content/repositories/snapshots/com/mycompany/linear-table/2.0-SNAPSHOT/linear-table-2.0-20180409.124308-1.jar (17 kB at 114 kB/s) Uploading to user-snapshots: http://192.168.44.128:8081/nexus/content/repositories/snapshots/com/mycompany/linear-table/2.0-SNAPSHOT/linear-table-2.0-20180409.124308-1.pom Uploaded to user-snapshots: http://www.chuangyed.com 192.168.44.128:8081/nexus/content/repositories/snapshots/com/mycompany/linear-table/2.0-SNAPSHOT/linear-table-2.0-20180409.124308-1.pom (1.8 kB at 30 kB/s) Downloading from user-snapshots: http://192.168.44.128:8081/nexus/content/repositories/snapshots/com/mycompany/linear-table/maven-metadata.xml Uploading to user-snapshots: http://192.168.44.128:8081/nexus/content/repositories/snapshots/com/mycompany/linear-table/2.0-SNAPSHOT/maven-metadata.xml Uploaded to user-snapshots: http://192.168.44.128:8081/nexus/content/repositories/snapshots/com/mycompany/linear-table/2.0-SNAPSHOT/maven-metadata.xml (769 B at 20 kB/s) Uploading to user-snapshots: http://192.168.44.128:8081/nexus/content/repositories/snapshots/com/mycompany/linear-table/maven-metadata.xml Uploaded to user-snapshots: http://192.168.44.128:8081/nexus/content/repositories/snapshots/com/mycompany/linear-table/maven-metadata.xml (283 B at 7.6 kB/s)
发布后的结果:
打源码包上传插件
源码包上传插件如下,将其添加到项目的pom.xml
文件中即可。
<build><plugins><plugin> <!-- 打jar包 --> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>3.0.1</version> <configuration> <excludes> <exclude>**/*.properties</exclude> </excludes> </configuration> </plugin> <plugin> <!-- 打源码 --> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>3.0.1<www.boshenyl.cn /version> <configuration> <attach>true</attach> </configuration> <executions> <execution> <phase>compile</phase> <goals> <goal>jar<www.mcyllpt.com/goal> <www.feihuanyule.com /goals> </execution> </executions> </plugin> <www.gouyiflb.cn /plugins> <www.caibaoyule.cn /build>
当添加上上述插件后,当我们执行mvn deploy
时,我们的项目源码包也将会一并发布到Nexus私服中
用Docker搭建Nexus私服相关推荐
- 基于Docker搭建nexus私服
一.环境搭建 1.下载nexus3镜像 docker pull sonatype/nexus3 2.将容器内部/var/nexus-data挂载到主机/root/nexus-data目录 docker ...
- (Docker实战) 第5篇:Centos7 拉取和部署搭建 NEXUS私服
文章目录 搭建nexus私服 1. 安装nexus3(admin/admin123) 2 .配置nexus3 2.1 新建一个maven2(proxy)仓库 2.2. 新建一个maven2(hoste ...
- Nexus - 基于docker搭建Maven私服
Nexus - 基于docker搭建Maven私服 1 关于Nexus和Maven 1.1 Nexus 1.2 Maven 2. 部署Nexus 2.1 启动nexus 2.2 登录nexus 2.3 ...
- Ubuntu16.04 搭建nexus 私服 学习步骤以及安装maven和git
1.下载安装maven wget https://www-us.apache.org/dist/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin. ...
- Linux_Centos中搭建nexus私服
1.在Linux下搭建Nexus私服 1).下载并且解压 下载 nexus-2.11.2-03-bundle.zip unzip nexus-2.11.2-03-bundle.z ...
- linux搭建nexus私服仓库并简单使用
linux搭建nexus私服仓库并简单使用 1.linux搭建nexus私服仓库 1.1.下载安装包 1.2.linux安装 1.3.修改端口号 1.4.启动和关闭 1.5.登录控制台 1.6.账号与 ...
- Docker 安装 nexus 私服
1. 下载 nexus3 镜像 docker pull sonatype/nexus3 2. 新建挂载目录 这里将 nexus 的目录挂载到宿主机的/usr/soft/nexus-data文件夹下,并 ...
- docker安装nexus私服
docker安装Maven私服nexus3 1 简介 2 Maven 2.1 Nexus私服 2.2 Docker 4 私服搭建过程 4.1 外网操作 4.1.1 下载和安装docker 4.1.2 ...
- Maven搭建Nexus私服
私服的介绍 1 什么是私服 私服是一种特殊的远程仓库,它是架设在局域网的仓库服务,私服代理广域网上的远程仓库,供局域网使用. 在企业开发中,私服的建设是有必要的,其好处如下: 1.1 节省资金.外网带 ...
最新文章
- python聚类的结果显示_使用Python进行聚类
- 《WTM送书活动:向更遥远的星辰大海起航~》
- 教育计算机缩写,{教育管理}计算机缩写术语完全介绍宝典.docx
- 阶段5 3.微服务项目【学成在线】_day01 搭建环境 CMS服务端开发_18-页面查询接口定义-定义接口...
- 关于jQuery性能优化
- 一步一步实现STM32-FOTA系列教程之STM32-FLASH分区说明
- 阿里云数据库设置ip白名单连接正式库详细步骤
- 揭秘前端工程师未来就业方向,年薪50w不是梦!
- python中encode和decode使用讲解与演示
- 中国鞋服行业首个AIGC准专业级设计大赛来了!
- AMI CORE8 OEM BIOS开发入门
- 论文笔记 Stochastic Gradient Hamiltonian Monte Carlo (SGHMC)
- 如何将word文档转换成电子书?
- vue-time-slot 一款基于vue3的会议预约时间组件,时间轴为早7-晚11,可自由选择,并且非常方便。
- vue组件通讯六种方法。
- 全国专业计算机应用能力,全国专业技术人员计算机应用能力考试「介绍」
- LaTeX之tcolorbox宏包应用示例
- 除了乳清蛋白,酪蛋白也是极佳的蛋白质之一
- windows配置samba客户端_安装配置Samba实现windows+linux文件共享
- 东方财富测试开发笔试、一面、二面、三面面经 + 默安科技测试实习面经