使用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/massivecd /usr/local/dockerfile/massivetouch Dockerfile |
编辑Dockerfile
|
1
2
3
|
from tomcat:7MAINTAINER massiveADD 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/massivecd /usr/local/dockerfile/massivetouch Dockerfile |
编辑Dockerfile
|
1
2
3
|
from tomcat:7MAINTAINER massiveADD 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应用会在容器关闭后被删除。
一辈子很短,努力的做好两件事就好;第一件事是热爱生活,好好的去爱身边的人;第二件事是努力学习,在工作中取得不一样的成绩,实现自己的价值,而不是仅仅为了赚钱;

浙公网安备 33010602011771号