dockerfile制作tomcat镜像

需求:

      用dockerfile制作一个个性化的tomcat镜像,比如给一个基本tomcat镜像添加session共享,设置中央时区等个性化设置。

dockerfile:

     

#基础镜像为harbor上pull下来的基础镜像
from reg.dynamicharbor.com/web/tomcat:8.5-jre8-alpine
#设置环境变量
ENV WORK_PATH /usr/local/tomcat

#删除/usr/local/tomcat/conf下面的相关xml文件
RUN rm $WORK_PATH/conf/context.xml
RUN rm $WORK_PATH/conf/web.xml
RUN rm $WORK_PATH/conf/server.xml

#替换成我们本地已经设置好的配置文件(将这些文件放在dockerfile同一目录下)
COPY  ./context.xml $WORK_PATH/conf
COPY  ./web.xml $WORK_PATH/conf
COPY  ./server.xml $WORK_PATH/conf
COPY  ./redis-data-cache.properties $WORK_PATH/conf
COPY  ./commons-logging-1.2.jar $WORK_PATH/lib
COPY  ./commons-pool2-2.4.2.jar $WORK_PATH/lib
COPY  ./jedis-2.9.0.jar $WORK_PATH/lib
COPY  ./tomcat-cluster-redis-session-manager-2.0.2.jar $WORK_PATH/lib

#设置中央时区(上海)
RUN apk update && apk add curl bash tree tzdata \
    && cp -r -f /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime \
    && echo -ne "Alpine Linux 3.4 image. (`uname -rsv`)\n" >> /root/.built

具体操作步骤:

       1、将相关文件(jar/xml/dockerfile)放在node节点服务器上

               

        2、进入当前目录:

cd /home/examtomcat

            制作docker镜像:

            

docker build -t mytomcat:1.0 .

        3、查看制作好的镜像:

        

docker images

         4、运行该镜像:

            

docker run -it -d -- mytomcat:1.0 /bin/sh

         5、查看运行的容器:

       

docker ps

         6、进入该容器:(775...是容器ID)

          

docker exec -it 775c7c9ee1e1 /bin/bash


        7、将该容器推到harbor上:

            登陆harbor:

 docker  login reg.dynamicharbor.com

            打tag,推上去:

            

docker tag mytomcat:1.0 (镜像名 )reg.dynamicharbor.com/web/mytomcat:1.0(自己命名)


docker push reg.dynamicharbor.com/web/mytomcat:1.0

       

           自定义镜像制作完成。

猜你喜欢

转载自blog.csdn.net/binggetong/article/details/79449397