配置maven

在pom.xml加入

1
2
3
4
5
6
7
8
9
10
11
12
13
<plugins>
    <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.2</version>
        <configuration>
            <url>https://192.168.1.106:8081/manager/text</url>
            <server>tomcat</server>
            <username>deploy</username>
            <password>deploy</password>
        </configuration>
    </plugin>
</plugins>

在maven的settings.xml加入

1
2
3
4
5
<server>
      <id>tomcat</id>
      <username>deploy</username>
      <password>deploy</password>
  </server>

创建个人的Docker镜像

创建Dockerfile文件

1
2
3
mkdir -p /usr/local/dockerfile/massive
cd /usr/local/dockerfile/massive
touch Dockerfile

编辑Dockerfile

1
2
3
from tomcat:7
MAINTAINER massive
ADD tomcat-users.xml /usr/local/tomcat/conf/

注:tomcat-users.xml可以在tomcat/conf目录找到,拷贝一个到此目录

在tomcat-users.xml加入以下内容

1
2
3
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="deploy" password="deploy" roles="manager-gui, manager-script"/>

build这个镜像

1
docker build -t massive:tomcat .

运行个人定制的Docker镜像

1
docker run -p 8081:8080  massive:tomcat

将web应用部署至容器里运行的tomcat

1
mvn tomcat7:deploy

web应用会通过tomcat的部署机制拷贝至容器的 /usr/local/tomcat/webapps/${project} 下,当Docker容器关闭后,容器内的改动不会保存至镜像,也就是说拷贝至容器的web应用会在容器关闭后被删除。

配置maven

在pom.xml加入

1
2
3
4
5
6
7
8
9
10
11
12
13
<plugins>
    <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.2</version>
        <configuration>
            <url>https://192.168.1.106:8081/manager/text</url>
            <server>tomcat</server>
            <username>deploy</username>
            <password>deploy</password>
        </configuration>
    </plugin>
</plugins>

在maven的settings.xml加入

1
2
3
4
5
<server>
      <id>tomcat</id>
      <username>deploy</username>
      <password>deploy</password>
  </server>

创建个人的Docker镜像

创建Dockerfile文件

1
2
3
mkdir -p /usr/local/dockerfile/massive
cd /usr/local/dockerfile/massive
touch Dockerfile

编辑Dockerfile

1
2
3
from tomcat:7
MAINTAINER massive
ADD tomcat-users.xml /usr/local/tomcat/conf/

注:tomcat-users.xml可以在tomcat/conf目录找到,拷贝一个到此目录

在tomcat-users.xml加入以下内容

1
2
3
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="deploy" password="deploy" roles="manager-gui, manager-script"/>

build这个镜像

1
docker build -t massive:tomcat .

运行个人定制的Docker镜像

1
docker run -p 8081:8080  massive:tomcat

将web应用部署至容器里运行的tomcat

1
mvn tomcat7:deploy

web应用会通过tomcat的部署机制拷贝至容器的 /usr/local/tomcat/webapps/${project} 下,当Docker容器关闭后,容器内的改动不会保存至镜像,也就是说拷贝至容器的web应用会在容器关闭后被删除。

使用maven插件自动部署web应用至Docker容器的tomcat的更多相关文章

  1. 使用jenkins 插件自动部署项目至tomcat

    前面使用maven.ant编译项目就不说,只说一下使用jenkins的插件自动部署项目 1.首先jenkins安装插件Deploy to container Plugin ,下载地址为:https:/ ...

  2. 15.自动部署web工程

    用maven自动部署web工程 在pom.xml中写入以下: <build> <!--最终名称,进入网页时有http://localhost:8080/xxx/--> < ...

  3. Gitlab CI 自动部署 asp.net core web api 到Docker容器

    为什么要写这个? 在一个系统长大的过程中会经历不断重构升级来满足商业的需求,而一个严谨的商业系统需要高效.稳定.可扩展,有时候还不得不考虑成本的问题.我希望能找到比较完整的开源解决方案来解决持续集成. ...

  4. IDEA自动部署WEB工程至远程服务器(学习笔记)

    一.部署Web工程的几种方式 ①本地打war,上传至远程服务器tomcat容器即可 优点:简单粗暴 缺点:浪费时间 ②IDEA自动部署至远程服务器 优点:节省大量时间 缺点:配置稍多(第一次) 二.I ...

  5. windows环境下利用Gitblit搭建Git服务器并实现自动部署Web站点目录

    Git服务搭建多见于linux环境,但windows主机也不少,目前网上文章诸多不全,且以讹传讹,不甚清楚.下面介绍windows环境下的自动部署和发布. 所需环境及资源:Java环境.Gitblit ...

  6. idea新建maven项目后生成web.xml方法和添加到tomcat方法

    idea新建maven项目后生成web.xml方法和添加到tomcat方法 参考:https://www.cnblogs.com/Liang-Haishan216/p/9302141.html 1.首 ...

  7. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录

    0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.感谢 在此感谢.net ...

  8. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之集群部署环境规划(一)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.环境规划 软件 版本 ...

  9. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之自签TLS证书及Etcd集群部署(二)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.服务器设置 1.把每一 ...

随机推荐

  1. 20165324 2017-2018-2 《Java程序设计》课程总结

    20165324 2017-2018-2 <Java程序设计>课程总结 每周作业链接汇总 预备作业1:20165324 我期望的师生关系 预备作业2:20165324 学习基础与C语言学习 ...

  2. js 有小数点数据求和多出小数点问题记录

    >> +192.92 << 492.91999999999996 >> (*+)/ << 492.92 做统计汇总时,页面加和,展示出一堆的小数点. 网 ...

  3. 成员函数查找[条款24]---《C++必知必会》

    调用一个成员函数,涉及三个步骤:第一步,编译器查找函数的名字:第二部,从可用候选者中选择最佳匹配函数:第三步,检查是否具有访问该函数的权限. #include<iostream> usin ...

  4. [Windows Powershell]-学习笔记(3)

    Powershell 通过函数扩展别名 在powershell中设置别名的确方便快捷,但是在设置别名的过程中并设置参数的相关信息,尽管别名会自动识别参数,但是如何把经常使用的参数默认设定在别名里面呢? ...

  5. javascript与jQuery的each,map回调函数参数顺序问题

    <script> var arr = [2,3,6,7,9]; //javascript中的forEach 和 map方法 arr.forEach(function(value,index ...

  6. javascript 理解对象--- 属性类型

    ECMA-262 把对象定义为:无序属性的集合,其属性可以包含基本值.对象或者函数: var Person = { name:"wsc", age :"25", ...

  7. Pyspark访问Hbase

    作者:Syn良子 出处:http://www.cnblogs.com/cssdongl/p/7347167.html 转载请注明出处 记录自己最近抽空折腾虚拟机环境时用spark2.0的pyspark ...

  8. 在xshell中使用sftp上传文件

    Xshell 5 (Build 1335)Copyright (c) 2002-2017 NetSarang Computer, Inc. All rights reserved. Type `hel ...

  9. netty11---管道

    客户端: package com.server; import java.net.Socket; public class Client { public static void main(Strin ...

  10. session与cookie的详解

    在PHP面试中 经常碰到请阐述session与cookie的区别与联系,以及如何修改两者的有效时间. 大家都知道,session是存储在服务器端的,cookie是存储在客户端的,session依赖于c ...