Dockerfile自定义tomcat基础镜像,带jkd和ant

前提:自定义tomcat基础镜像。tomcat的配置和运行参数可以在,具体项目文件的Dockerfile中添加,这样tomcat基础镜像就通用了。
因为是传统项目,没有maven 所以用ant构建,maven项目思路一样,安装maven,执行命令构建。
Dockerfile:

#基于centos7构建
FROM centos:7

#作者
MAINTAINER xxxxx@xxxxxxx.com

#定义时区参数
ENV TZ=Asia/Shanghai
#设置时区
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo '$TZ' > /etc/timezone
#安装必要应用
RUN yum -y install kde-l10n-Chinese glibc-common
#设置编码
RUN localedef -c -f UTF-8 -i zh_CN zh_CN.utf8
#设置环境变量
ENV LC_ALL zh_CN.utf8

#拷贝 ant tomcat jdk 到镜像并解压
ADD apache-ant-1.9.15.tar.gz /usr/local/ant
ADD apache-tomcat-8.5.23.tar.gz /usr/local/tomcat
ADD jdk1.7.0_80.tar.gz /usr/local/jdk
#定义交互时登录路径
ENV MYPATH /usr/local
WORKDIR $MYPATH
#配置ant jdk 和tomcat环境变量
ENV JAVA_HOME /usr/local/jdk/jdk1.7.0_80
ENV TOMCAT_HOME /usr/local/tomcat/apache-tomcat-8.5.23
ENV CATALINA_HOME /usr/local/tomcat/apache-tomcat-8.5.23
ENV CATALINA_BASE /usr/local/tomcat/apache-tomcat-8.5.23
ENV CLASSPATH $JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV ANT_HOME=/usr/local/ant/apache-ant-1.9.15
ENV PATH $PATH:$JAVA_HOME/bin:$ANT_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin

RUN chmod -R 777 /usr/local
ENTRYPOINT ["/bin/sh","-c","8080"]
ENTRYPOINT ["/usr/local/tomcat/apache-tomcat-8.5.23/bin/catalina.sh","run"]



项目的Dockerfile,

#基于上面的tomcat基础镜像
FROM tomcat8.5_jdk7-ant
#作者
MAINTAINER xxx@xxx.com

#复制代码到ant文件夹下
ADD ./ /ant
WORKDIR /ant
#新建项目class源文件目录 等于tomcat/webapps/项目名
RUN mkdir -p /www/xxxxxx
#因为是传统项目,没有maven 所以用ant构建
#构建项目 build.xml在项目的根目录下
RUN ant -buildfile /ant/build.xml
#删除ant目录,因为已经编译好了class文件
RUN rm -rf /ant
#配置tomcat运行参数
#配置tomcat项目源文件目录
RUN sed -i '/<\/Host>/i\\t<Context path="" docBase="\/www\/graduate2015" reloadable="false"><\/Context>' /usr/local/tomcat/apache-tomcat-8.5.23/conf/server.xml 
#配置tomcat运行参数
RUN sed -i '2i\JAVA_OPTS="-Djava.security.egd=file:\/dev\/.\/urandom -server -Xms2048M -Xmx2048M -XX:PermSize=1024M"' /usr/local/tomcat/apache-tomcat-8.5.23/bin/catalina.sh
#启动项目
ENTRYPOINT ["/usr/local/tomcat/apache-tomcat-8.5.23/bin/catalina.sh","run"]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值