docker_tomcat使用

来源:互联网 发布:淘宝县级运营中心加盟 编辑:程序博客网 时间:2024/05/17 05:05

官方 docker 镜像:/tomcat/”>https://hub.docker.com//tomcat/
最近在搞 u3d客户端 的 版本更新,需要个 文件下载服务器,使用 docker 跑 tomcat 是最快最简便的。


部署

  1. pull 镜像

    wilker@ubuntu:~$ docker search tomcatNAME                           DESCRIPTION                                     STARS     OFFICIAL   AUTOMATEDtomcat                         Apache Tomcat is an open source implementa...   1471      [OK]       wilker@ubuntu:~$ docker pull tomcat
  2. run 镜像,挂载数据到宿主中

    wilker@ubuntu:~/Desktop$ mkdir -p a_tomcat$ docker run \--name tomcat \-p 9090:8080 \-v /home/wilker/Desktop/a_tomcat:/usr/local/tomcat/webapps/test \-d \tomcat:latest
  3. 测试,访问以下 http://192.168.1.102:9090 ,出现那只猫就ok了

    • 再测一下 webapps 下的 test 目录,在宿主的 a_tomcat 随意建个文件

      wilker@ubuntu:~/Desktop/a_tomcat$ vi aaa.lualocal a = 1

      访问 http://192.168.1.102:9090/test/aaa.lua,网页出现 local a = 1 则表示ok。

  4. 参考资料

    • http://www.runoob.com/docker/docker-install-tomcat.html

配置 tomcat 下载服务器

  1. 进入 tomcat 容器

    wilker@ubuntu:~$ docker exec -it tomcat bashroot@92b0091d5292:/usr/local/tomcat# 
  2. /usr/local/tomcat/conf/Catalina/localhost 路径下新建一个文件 download.xml , 内容如下

    <?xml version="1.0" encoding="UTF-8"?><Context  reloadable="true" docBase="/usr/local/tomcat/webapps/test/download" crossContext="true"></Context>
    • docBase:指定路径
  3. 修改 web.xml 配置文件,在 /usr/local/tomcat/conf/web.xml 中,修改 servlet 内容为

       <servlet>       <servlet-name>default</servlet-name>       <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>       <init-param>           <param-name>debug</param-name>           <param-value>0</param-value>       </init-param>       <init-param>           <param-name>listings</param-name>           <param-value>true</param-value>       </init-param>       <init-param>           <param-name>contextXsltFile</param-name>           <param-value>/load.xsl</param-value>       </init-param>       <load-on-startup>1</load-on-startup>   </servlet>
    • 其实就是 将 listings 改为 true ,然后添加

      <init-param>         <param-name>contextXsltFile</param-name>         <param-value>/load.xsl</param-value>     </init-param>
  4. 增加一个 load.xsl 模板文件(上一步指定的 contextXsltFile ),放在 /usr/local/tomcat/webapps/test (也就是 web 应用的根目录),内容如下

    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="html" encoding="UTF-8" indent="no"/> <xsl:template match="listing">  <html>   <head>     <title>     Download       <xsl:value-of select="@directory"/>     </title>     <style>       h1{color : white;background-color : #0086b2;}       h3{color : white;background-color : #0086b2;}       body{font-family : sans-serif,Arial,Tahoma;            color : black;background-color : white;}       b{color : white;background-color : #0086b2;}       a{color : black;} HR{color : #0086b2;}     </style>   </head>   <body>     <h1>Download           <xsl:value-of select="@directory"/>     </h1>     <hr size="1" />     <table cellspacing="0"                 width="100%"           cellpadding="5"                 align="center">       <tr>         <th align="left">Filename</th>         <th align="center">Size</th>         <th align="right">Last Modified</th>       </tr>       <xsl:apply-templates select="entries"/>       </table>     <xsl:apply-templates select="readme"/>     <hr size="1" />     <h3>********* 2013 </h3>   </body>  </html> </xsl:template> <xsl:template match="entries">   <xsl:apply-templates select="entry"/> </xsl:template> <xsl:template match="readme">   <hr size="1" />   <pre><xsl:apply-templates/></pre> </xsl:template> <xsl:template match="entry">   <tr>     <td align="left">       <xsl:variable name="urlPath" select="@urlPath"/>       <a href="{$urlPath}">         <tt><xsl:apply-templates/></tt>       </a>     </td>     <td align="right">       <tt><xsl:value-of select="@size"/></tt>     </td>     <td align="right">       <tt><xsl:value-of select="@date"/></tt>     </td>   </tr> </xsl:template></xsl:stylesheet>
  5. 重启 tomcat 容器

    $ docker restart tomcat 
  6. 访问以下: http://192.168.1.102:9090/test/

    这里写图片描述

  7. 参考资料:

    • http://www.cnblogs.com/huxdiy/p/tomcat%E6%96%87%E4%BB%B6%E4%B8%8B%E8%BD%BD.html

上面是使用模板的方式显示页面,不过我觉得还是默认的显示比较好看,还能返回上一级

将 第三步 中 web.xml 中的 contextXsltFile 字段去掉即可,然后重启 tomcat,显示如下

这里写图片描述