使用maven插件自动部署web应用至Docker容器的tomcat
配置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 > < 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 > < 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的更多相关文章
- 使用jenkins 插件自动部署项目至tomcat
前面使用maven.ant编译项目就不说,只说一下使用jenkins的插件自动部署项目 1.首先jenkins安装插件Deploy to container Plugin ,下载地址为:https:/ ...
- 15.自动部署web工程
用maven自动部署web工程 在pom.xml中写入以下: <build> <!--最终名称,进入网页时有http://localhost:8080/xxx/--> < ...
- Gitlab CI 自动部署 asp.net core web api 到Docker容器
为什么要写这个? 在一个系统长大的过程中会经历不断重构升级来满足商业的需求,而一个严谨的商业系统需要高效.稳定.可扩展,有时候还不得不考虑成本的问题.我希望能找到比较完整的开源解决方案来解决持续集成. ...
- IDEA自动部署WEB工程至远程服务器(学习笔记)
一.部署Web工程的几种方式 ①本地打war,上传至远程服务器tomcat容器即可 优点:简单粗暴 缺点:浪费时间 ②IDEA自动部署至远程服务器 优点:节省大量时间 缺点:配置稍多(第一次) 二.I ...
- windows环境下利用Gitblit搭建Git服务器并实现自动部署Web站点目录
Git服务搭建多见于linux环境,但windows主机也不少,目前网上文章诸多不全,且以讹传讹,不甚清楚.下面介绍windows环境下的自动部署和发布. 所需环境及资源:Java环境.Gitblit ...
- idea新建maven项目后生成web.xml方法和添加到tomcat方法
idea新建maven项目后生成web.xml方法和添加到tomcat方法 参考:https://www.cnblogs.com/Liang-Haishan216/p/9302141.html 1.首 ...
- Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录
0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.感谢 在此感谢.net ...
- Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之集群部署环境规划(一)
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.环境规划 软件 版本 ...
- Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之自签TLS证书及Etcd集群部署(二)
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.服务器设置 1.把每一 ...
随机推荐
- debian flam3 依赖文件
https://packages.debian.org/stable/graphics/flam3 package names descriptions source package ...
- Godaddy域名因为whois信息虚假被暂时关闭
如果你收到来自 Godadddy 通过 invalidwhois@godaddy.com 发出的标题为如下内容的邮件: [Incident ID: xxxx] xxxx - DS Invalid Wh ...
- 深入理解JS对象和原型链
函数在整个js中是最复杂也是最重要的知识 一个函数中存在多面性: 1.它本身就是一个普通的函数,执行的时候形成的私有作用域(闭包),形参赋值,预解释,代码执行,执行完 成后栈内存销毁/不销毁. 2.& ...
- PKU 4334 Trouble(哈希)
原题链接 思路:哈希存入相反数 注意:HDU不支持long long要使用__int64 #include<cstdio> #include<cstring> #define ...
- 开发者应该了解的API技术清单
近几年,API经济纷纷崛起,无论是国外还是国内,众多厂商积极开放API.开发者很多时候是要借助这些API,才能轻松构建出一款应用,极大地提高开发效率和开发质量.文中整理了一份API服务清单,内容涵盖: ...
- ASP.NET MVC BundleConfig介绍和使用
1.BundleConfig介绍: 在创建ASP.NET MVC5项目时,默认在App_Start文件夹中创建了BudleConfig.cs文件. public class BundleConfig ...
- spark[源码]-DAG调度器源码分析[二]
前言 根据图片上的结构划分我们不难发现当rdd触发action操作之后,会调用SparkContext的runJob方法,最后调用的DAGScheduler.handleJobSubmitted方法完 ...
- 微信小程序 drawImage 问题
好久没写了,其实可写的还是挺多,主要还是懒吧... 最近公司项目使用小程序做序列帧动画,大概有 116 张图,共9.6M. 比较闲的日子里实验了一番,主要有以下几种方法, 1. css backgro ...
- logstash编写2以及结合kibana使用
有时候根据日志的内容,可能一行不能全部显示,会延续在下一行,为了将上下内容关联在一起,于是codec插件中的multiline插件 就派上用场了,源日志内容: [2017-09-20T16:04:34 ...
- 《Java程序设计》第一次实验实验报告
北京电子科技学院(besti)实验报告 课程:java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.04.08 实验名称:java开发环境的熟悉(linux + eclipse) 程 ...