您的位置:首页 > 运维架构 > Docker

实战maven私有仓库三部曲之三:Docker下搭建maven私有仓库

2018-01-20 13:04 615 查看
本章是《实战maven私有仓库》系列的第三篇,前两章的地址如下:

1. 《实战maven私有仓库三部曲之一:搭建和使用》;

2. 《实战maven私有仓库三部曲之二:上传到私有仓库》

在前两章中,我们先在linux搭建maven私有仓库,然后在开发环境使用此仓库,本章我们在docker下快速搭建maven私有仓库,然后像前面章节的实战一样使用它;

本文地址:http://blog.csdn.net/boling_cavalry/article/details/79111740

实战环境

本次实战的环境是Ubuntu16,安装的Docker版本是17.03.2-ce;

本次用到的二方库工程mvnDemoLib,和《实战maven私有仓库三部曲之二:上传到私有仓库》中用到的mvnDemoLib是同一个,源码的git地址是:git@github.com:zq2599/blog_demos.git,用浏览器访问的地址是:https://github.com/zq2599/blog_demos,这里面有多个工程,本次用到的工程如下图红框所示:



注意事项

本次实战要用到的端口是8081,如果该端口已被占用请及时释放,如果要用其他端口也可以,但是请修改开发环境中与maven私有仓库相关的配置(配置信息包括maven的settings.xml以及maven工程的pom.xml,详情请参照前两篇文章);

启动maven私有仓库的容器

在docker所在电脑创建目录/usr/local/work/dockermaven;

执行命令chmod 777 /usr/local/work/dockermaven,给此目录赋权限;

执行以下命令,会自动从hub.docker.com下载最新的nexus镜像,然后启动一个名为nexus的容器,当前电脑的8081端口被映射到容器的8081端口:

docker run -idt -p 8081:8081 --name nexus -v /usr/local/work/dockermaven:/sonatype-work sonatype/nexus


执行命令docker logs -f nexus查看容器日志滚动信息,显示如下信息时nexus启动成功:

2018-01-20 03:37:42,187+0000 INFO  [jetty-main-1]  org.sonatype.nexus.webresources.internal.WebResourceServiceImpl - Discovered 1971 resources

2018-01-20 03:37:42,189+0000 INFO  [jetty-main-1]  org.sonatype.nexus.webresources.internal.WebResourceServlet - Max-age: 30 days (2592000 seconds)

2018-01-20 03:37:42,304+0000 INFO  [jetty-main-1]  org.sonatype.nexus.bootstrap.jetty.InstrumentedSelectChannelConnector - Metrics enabled

2018-01-20 03:37:42,348+0000 INFO  [jetty-main-1]  org.eclipse.jetty.server.AbstractConnector - Started InstrumentedSelectChannelConnector@0.0.0.0:8081

2018-01-20 03:37:42,352+0000 INFO  [jetty-main-1]  org.sonatype.nexus.bootstrap.jetty.JettyServer - Running

2018-01-20 03:37:42,352+0000 INFO  [main] *SYSTEM org.sonatype.nexus.bootstrap.jetty.JettyServer - Started


查看当前电脑的/usr/local/work/dockermaven目录,可以看到nexus容器中应用的相关文件已经在此处创建,如下图:



我的电脑IP是192.168.119.155,因此在浏览器输入地址访问nexus:http://192.168.119.155:8081/nexus

对maven私有仓库的使用者来说,完全感受不到实际安装和在docker安装私有仓库的区别,您可以像前两章的实战那样,体验此仓库的jar缓存和保存二方库的服务;

我这里像上一章那样发布了一个二方库到nexus,deploy成功后,可以在nexus上看到新的二方库,如下图所示,(deploy之前记得在nexus上设置允许上传,并且设置deployment账号的密码,详见上一章):



至此,实战maven私有仓库三部曲系列就全部结束了,希望其中的实战和demo能够助您一臂之力;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: