栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用来自Docker的tomcat映像时具有自定义catalina.sh

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用来自Docker的tomcat映像时具有自定义catalina.sh

我不知道您是否已经找到解决方案,但这是我的建议。如果我对您的理解正确,则希望为Web应用程序设置Java
VM选项。另外,您尝试使用自己的版本更改catalina.sh脚本,以便在运行Web应用程序时它包含附加的Java VM选项。

我认为您不必自己更改图像

catalina.sh
。脚本catalina.sh查看环境变量。您可以将环境变量CATALINA_OPTS设置为包含此设置。(还有一个环境变量JAVA_OPTS,但是当您还希望将这些Java选项应用于某些其他Tomcat本地进程(例如,根据tomcat文档的stop进程和版本)时,应使用该变量。)

Tomcat的最新版本(9)

catalina.sh
明确指出:

Do not set the variables in this script. Instead put them into a scriptsetenv.sh in CATALINA_base/bin to keep your customizations separate.

因此,您可以选择以下两个选项之一:

  1. 使用Tomcat的标准Docker映像,仅添加您的Web应用程序,而不添加自定义的catalina.sh。运行此映像的容器时,请将CATALINA_OPTS环境变量设置为的值

    -DentityExpansionLimit=100000

  2. 制作一个

    setenv.sh
    设置CATALINA_OPTS变量的脚本。还要将此脚本添加到构建文件中。版本6
    catalina.sh
    在CATALINA_HOME和CATALINA_base文件夹中查找此脚本,并在存在的情况下执行该脚本。这样的事情(我没有测试)。

        #!/bin/sh      echo "Setting JVM option Entity Expansion limit for application"      export CATALINA_OPTS="-DentityExpansionLimit=100000"

选项2的优点是,您可以将正确的默认JVM选项强制放入映像中,而不是依靠运行映像的人员正确设置环境变量。

那有意义吗?



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/466933.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号