文档章节

创建自定义maven的docker镜像

大头鬼_yc
 大头鬼_yc
发布于 2018/08/27 08:57
字数 398
阅读 82
收藏 1

有时docker的官方maven镜像不能满足我们需求时,我们需要自定义maven的settings.xml文件,加上阿里云的映射和自己的私服

  1. clone阿里云maven-image仓库:git@github.com:AliyunContainerService/maven-image.git

  2. 进入3-jdk-8目录,修改settings.xml文件

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      https://maven.apache.org/xsd/settings-1.0.0.xsd">
  <localRepository>/usr/share/maven/ref/repository</localRepository>
  <servers>
    <server> 
      <id>youseniu-releases</id> 
      <username>xxx</username> 
      <password>xxxx</password> 
    </server>
    <server>
      <id>youseniu-snapshots</id> 
      <username>xxxx</username> 
      <password>xxxxx</password> 
    </server>
  </servers>
  <mirrors>
    <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>https://maven.aliyun.com/repository/central</url>
      <mirrorOf>central</mirrorOf>        
    </mirror>
  </mirrors>
  <profiles>

    <profile>
      <id>youseniu</id> 
      <repositories> 
        <repository> 
          <id>youseniu</id> 
          <name>youseniu private nexus</name> 
          <url>http://ysnnexus.liyuchang.xin/repository/maven-public/</url>
          <releases>
            <enabled>true</enabled>
          </releases> 
          <snapshots>
            <enabled>true</enabled>
          </snapshots> 
        </repository>
      </repositories> 
      <pluginRepositories> 
        <pluginRepository> 
          <id>youseniu</id> 
          <name>youseniu private nexus</name> 
          <url>http://ysnnexus.liyuchang.xin/repository/maven-public/</url>
          <releases>
            <enabled>true</enabled>
          </releases> 
          <snapshots>
            <enabled>true</enabled>
          </snapshots> 
        </pluginRepository> 
      </pluginRepositories> 
    </profile>
    <profile>  
      <id>jdk-1.8</id>  
      <activation>  
        <activeByDefault>true</activeByDefault>  
        <jdk>1.8</jdk>  
      </activation>  
      <properties>  
        <maven.compiler.source>1.8</maven.compiler.source>  
        <maven.compiler.target>1.8</maven.compiler.target>  
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>  
      </properties>  
    </profile>
  </profiles>
  <activeProfiles>
    <activeProfile>youseniu</activeProfile>
  </activeProfiles>
</settings>
  1. build镜像
#build
docker build --tag liyc/maven:3.5.2-jdk-8 .
#push
docker push liyc/maven:3.5.2-jdk-8
#pull
docker pull liyc/maven:3.5.2-jdk-8
  1. 使用新镜像运行maven项目
#进入项目所在目录
cd /maven_project_home
#运行
docker run --name testproject 
    -it --rm -p 8080:8080  
    -v "$(pwd)":/usr/src/mymaven -v maven-repo:/usr/share/maven/ref/repository 
    -w /usr/src/mymaven --restart=on-failure liyc/maven:3.5.4-jdk-8 
    mvn spring-boot:run -Duser.timezone=Asia/Shanghai

maven官方docker
阿里maven-image

© 著作权归作者所有

大头鬼_yc

大头鬼_yc

粉丝 5
博文 70
码字总数 18031
作品 0
昌平
程序员
私信 提问
学习Spring Boot:(二十三)Spring Boot 中使用 Docker

前言 简单的学习下怎么在 Spring Boot 中使用 Docker 进行构建,发布一个镜像,现在我们通过远程的 docker api 构建镜像,运行容器,发布镜像等操作。 这里只介绍两种方式: 远程命令 api (...

qq_35915384
2018/05/07
0
0
30分钟搞定 Jenkins CI

本文首发于:Jenkins 中文社区 原文链接 作者:Gunter Rotsaert 译者:Yanjun Shi 30分钟搞定 Jenkins CI 设置新的 Jenkins CI,以便可以开始测试新的 Jenkins 插件 你想在本地设置中使用 Je...

Jenkins中文社区
06/14
66
0
Spring Cloud+Docker创建微服务容器实例

1. 配置windows环境 安装windows版的docker 此步骤可自行百度一下安装方式。 配置maven环境变量 在path中添加maven的bin目录,正常情况下,maven的MAVEN_HOME已经存在了,在此基础上加/bin即...

Lovedev
2018/06/07
0
0
Docker下Prometheus和Grafana三部曲之三:自定义监控项开发和配置

版权声明:欢迎转载,请注明出处,谢谢。 https://blog.csdn.net/boling_cavalry/article/details/88375734 本文是《Docker下Prometheus和Grafana三部曲》的终篇,前面的文章中,我们体验了快...

博陵精骑
03/10
0
0
用Docker重新定义Java虚拟化部署实战案例

上周希云和大家分享了《用Docker重新定义Java虚拟化部署(基础篇)》,估计有些小伙伴早已按耐不住着急的心情了吧。今天希云就和大家分享在docker里部署java应用的实战案例。 >>>Dockerfiles...

dockerer
2015/12/16
3.4K
3

没有更多内容

加载失败,请刷新页面

加载更多

网站安全维护公司对渗透测试php后门分析

很多想做渗透测试的朋友都想了解关于PHP后门漏洞的安全测试重点方法,以及该如何预防被中php后门,本节由我们的Sine安全高级渗透工程师进行全面的讲解,来让大家更好的理解和了解php代码的安全...

网站安全
11分钟前
5
0
在github上创建代码仓库时忘记添加.gitignore文件或修改了.gitignore该怎么办?

#清除本地缓存(改变成未track状态) #git rm -r --cached . 表示清除项目中所有文件的本地缓存 git rm -r --cached xxx #xxx表示不想版本控制的文件,比如小编可以输入test.o #.gitignore中的...

博爱飞扬
11分钟前
4
0
Fsimage 与 EditLog定义及合并过程

有很多客户端在向 hdfs 中写数据,同时有很多客户端在查数据,这就涉及到一个响应速度问题。因为只有一个 namenode ,客户端在写的时候,必须迅速记下来。 1. 向 namenode 询问可以存储到哪些...

Garphy
15分钟前
4
0
TI KeyStone C66x开发板处理器、NAND FLASH、NOR FLASH

TL6678F-EasyEVM是广州创龙基于SOM-TL6678F核心板而研发的一款多核高性能DSP+FPGA开发板。开发板采用核心板+底板方式,底板采用沉金无铅工艺的8层板设计,尺寸为247.33mm*139.8mm,它为用户提...

Tronlong创龙
32分钟前
5
0
【2019年8月版本】OCP 071认证考试最新版本的考试原题-第13题

Choose the best answer. Examine this query: SELECT TRUNC (ROUND(156.00,-2),-1) FROM DUAL; What is the result? A) 16 B) 160 C) 150 D) 200 E) 100 Answer:D (解析:关键就是 round ......

oschina_5359
43分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部