本章是《实战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. jackson序列化字段字母大小写及字段名重复

    一:Jackson默认的属性发现规则将会查找到如下所述的属性: 1.所有被public修饰的字段(成员变量): 2.所有被public修饰的getter(即形如“getXxx()”的方法): 3.所有 ...

  2. 2017 ACM/ICPC Asia Regional Shenyang Online array array array

    2017-09-15 21:05:41 writer:pprp 给出一个序列问能否去掉k的数之后使得整个序列不是递增也不是递减的 先求出LIS,然后倒序求出最长递减子序列长度,然后判断去k的数后长度是 ...

  3. Elasticsearch6.0之一:安装

    基于windows平台,安装Elasticsearch, Elasticsearch-head. 1. 安装JAVA SDK,配置好环境变量 2. 安装NodeJs NPM, Grunt.   npm ...

  4. zpar使用方法之Chinese Word Segmentation

    第一步在这里: http://people.sutd.edu.sg/~yue_zhang/doc/doc/qs.html 你可以找到这句话, 所以在命令行中分别敲入 make zpar make zp ...

  5. try throw catch typeid

    QString str = ui.ll->text(); try { if (str == NULL) { throw 1; } else { throw 1.2; } } catch (int ...

  6. LeetCode第[78]题(Java):Subsets(求子集)扩展——第[90]题:Subsets 2

    题目:矩阵置0 难度:Easy 题目内容:   Given a set of distinct integers, nums, return all possible subsets (the pow ...

  7. [postgresql]ROWS is not applicable when function does not return a set问题解决

    需要把程序结尾的ROWS 1000去掉,提示如果函数不是返回一个数据集的情况下ROWS是不适用的: CREATE OR REPLACE FUNCTION public.function( eigyou ...

  8. [Vue]组件——组件的data 必须是一个函数

    普通的Vue实例data是一个对象: data: { count: 0 } 组件的data是一个方法: data: function () { return { count: 0 } } 详情见官网: ...

  9. Django框架数据库模型

    博主最近开始优化之前的API接口自动化框架,这次打算使用django框架来完成 # -*- coding: utf-8 -*- from __future__ import unicode_liter ...

  10. phalcon: dispatcher->forward地址转发/重定向

    比如,我indexController里面的indexAction,因为用户没有穿参数,我要重定向到 errorAction里面 $this->dispatcher->forward(ar ...