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

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

实战环境

  1. 本次实战的环境是Ubuntu16,安装的Docker版本是17.03.2-ce;
  2. 本次用到的二方库工程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私有仓库的容器

  1. 在docker所在电脑创建目录/usr/local/work/dockermaven;
  2. 执行命令chmod 777 /usr/local/work/dockermaven,给此目录赋权限;
  3. 执行以下命令,会自动从hub.docker.com下载最新的nexus镜像,然后启动一个名为nexus的容器,当前电脑的8081端口被映射到容器的8081端口: 
    docker run -idt -p 8081:8081 --name nexus -v /usr/local/work/dockermaven:/sonatype-work sonatype/nexus 
  4. 执行命令docker logs -f nexus查看容器日志滚动信息,显示如下信息时nexus启动成功: 
    -- ::,+ INFO [jetty-main-] org.sonatype.nexus.webresources.internal.WebResourceServiceImpl - Discovered  resources
    -- ::,+ INFO [jetty-main-] org.sonatype.nexus.webresources.internal.WebResourceServlet - Max-age: days ( seconds)
    -- ::,+ INFO [jetty-main-] org.sonatype.nexus.bootstrap.jetty.InstrumentedSelectChannelConnector - Metrics enabled
    -- ::,+ INFO [jetty-main-] org.eclipse.jetty.server.AbstractConnector - Started InstrumentedSelectChannelConnector@0.0.0.0:
    -- ::,+ INFO [jetty-main-] org.sonatype.nexus.bootstrap.jetty.JettyServer - Running
    -- ::,+ INFO [main] *SYSTEM org.sonatype.nexus.bootstrap.jetty.JettyServer - Started

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

  1. 我的电脑IP是192.168.119.155,因此在浏览器输入地址访问nexus:http://192.168.119.155:8081/nexus
  2. 对maven私有仓库的使用者来说,完全感受不到实际安装和在docker安装私有仓库的区别,您可以像前两章的实战那样,体验此仓库的jar缓存和保存二方库的服务;
  3. 我这里像上一章那样发布了一个二方库到nexus,deploy成功后,可以在nexus上看到新的二方库,如下图所示,(deploy之前记得在nexus上设置允许上传,并且设置deployment账号的密码,详见上一章): 

至此,实战maven私有仓库三部曲系列就全部结束了,希望其中的实战和demo能够助您一臂之力;

实战maven私有仓库三部曲之三:Docker下搭建maven私有仓库的更多相关文章

  1. maven仓库失效的情况下搭建maven项目

    maven仓库失效的情况下搭建maven项目 1,在有maven仓库的情况下mvn clean package 2,整个项目拷贝到没有的环境下 3,ls |xargs -t -I a cp a/pom ...

  2. Docker搭建disconf环境,三部曲之三:细说搭建过程

    Docker下的disconf实战全文链接 <Docker搭建disconf环境,三部曲之一:极速搭建disconf>: <Docker搭建disconf环境,三部曲之二:本地快速构 ...

  3. 搭建docker镜像仓库(二):使用harbor搭建本地镜像仓库

    目录 一.系统环境 二.前言 三.Harbor 四.使用harbor搭建私有镜像仓库 4.1 环境介绍 4.2 k8smaster节点安装配置harbor 4.2.1 安装harbor离线包 4.2. ...

  4. SpringMVC框架入门配置 IDEA下搭建Maven项目

    初衷:本人初学SpringMVC的时候遇到各种稀奇古怪的问题,网上各种技术论坛上的帖子又参差不齐,难以一步到位达到配置好的效果,这里我将我配置的总结写到这里供大家初学SpringMVC的同僚们共同学习 ...

  5. Ubuntu server下搭建Maven私服Nexus

    Ubuntu server下搭建Maven私服Nexus Maven私服Nexus的作用,主要是为了节省资源,在内部作为maven开发资源共享服务器来使用. 1.下载 通过root用户进去Ubuntu ...

  6. .Net Core实战教程(一):Linux下搭建项目

    .Net Core实战教程(一):Linux下搭建项目 附言 .net core 1.0的时候就开始关注了,一直没有用于项目.真正用于项目我是2.0开始使用的.这几年也总结出一些经验.最近有空就写出来 ...

  7. [Eclipse的Maven项目搭建,仅为测试Maven功能]如何在Eclipse下搭建Maven项目

    [Eclipse的Maven项目搭建,仅为测试Maven功能]如何在Eclipse下搭建Maven项目   你可能需要了解以下才能更好的阅读以下: 在 Windows 中配置Maven: http:/ ...

  8. [转]SpringMVC框架入门配置 IDEA下搭建Maven项目

    初衷:本人初学SpringMVC的时候遇到各种稀奇古怪的问题,网上各种技术论坛上的帖子又参差不齐,难以一步到位达到配置好的效果,这里我将我配置的总结写到这里供大家初学SpringMVC的同僚们共同学习 ...

  9. CentOS6.8环境下搭建yum网络仓库

    CentOS6.8环境下搭建yum网络仓库 本文利用ftp服务,在CentOS6.8系统下搭建一个yum仓库,然后用另一台虚拟机访问该仓库.并安装程序包 安装ftp服务 查询ftp服务是否安装 [ro ...

随机推荐

  1. django的基本用法

    1.项目创建 # 新建一个文件夹DjangoProjects# 切换到需要的文件夹创建虚拟环境 C:\Projects\DjangoProjects>python -m venv test_ve ...

  2. LeetCode——Unique Binary Search Trees II

    Question Given an integer n, generate all structurally unique BST's (binary search trees) that store ...

  3. 记jsp判断

    empty:表示空字符串,null,空数组,空集合. ! empty:表示非空字符串,非null,非空数组,非空集合.

  4. nginx作为TCP反向代理

    基于windows环境 基于nginx1.12.2版本 1. 解压nginx 2. 修改conf配置 # 打开conf/nginx,conf文件,写入以下配置 # upstream backend 里 ...

  5. HDU 1698 just a hook - 带有lazy标记的线段树(用结构体实现)

    2017-08-30 18:54:40 writer:pprp 可以跟上一篇博客做个对比, 这种实现不是很好理解,上一篇比较好理解,但是感觉有的地方不够严密 代码如下: /* @theme:segme ...

  6. C# 自动触发鼠标、键盘事件

    要在C#程序中触发鼠标.键盘事件必须要调用windows函数. 一.鼠标事件的触发 1.引用windows函数mouse_event /// <summary> /// 鼠标事件 /// ...

  7. Memcached CAS 命令

    Memcached CAS(Check-And-Set 或 Compare-And-Swap) 命令用于执行一个"检查并设置"的操作 它仅在当前客户端最后一次取值后,该key 对应 ...

  8. Js 操作 Cookies

    <script language=javascript> // cookie其实是一个key=value就是一个cookie而不是 //获得coolie 的值 function cooki ...

  9. PowerDesigner用法和技巧

    PowerDesigner是一款功能非常强大的建模工具软件,足以与Rose比肩,同样是当今最著名的建模软件之一.Rose是专攻UML对象模型的建模工具,之后才向数据库建模发展,而PowerDesign ...

  10. SpringMvc+mybatis mybatis在xml文件中大于小于号处理

    方法一:转移字符 用了转义字符把>和<替换掉,然后就没有问题了. SELECT * FROM test WHERE = AND start_date <= CURRENT_DATE ...