在Tomcat中将主机声明上的createDirs属性设置为false的含义

在Tomcat中将主机声明上的createDirs属性设置为false的含义,tomcat,configuration,host,Tomcat,Configuration,Host,在Docker容器中以非root用户身份运行Tomcat时,我在日志中得到一个错误条目: Unable to create directory for deployment: [/usr/local/tomcat/conf/Catalina/localhost] 我将此追溯到启动Tomcat时前面提到的目录不存在,并且启动Tomcat的用户没有创建目录的权限 我还跟踪了此错误消息的来源及其原因,因为server.xml中主机声明的createDirs属性未设置为false。createDirs

在Docker容器中以非root用户身份运行Tomcat时,我在日志中得到一个错误条目:

Unable to create directory for deployment: [/usr/local/tomcat/conf/Catalina/localhost]
我将此追溯到启动Tomcat时前面提到的目录不存在,并且启动Tomcat的用户没有创建目录的权限

我还跟踪了此错误消息的来源及其原因,因为server.xml中主机声明的createDirs属性未设置为false。createDirs属性的docs声明它设置为true(默认值),它将尝试创建一些目录,失败时记录错误,但失败不会停止Tomcat的启动

但我在任何地方都找不到的是,为什么这些目录首先被创建,以及当createDirs设置为false时它们没有被创建的后果

这个问题通常针对Tomcat docker映像(为了确定通用Tomcat docker映像是否应该做一些不同的事情来防止日志中出现这些错误),但在我的特定场景中,我运行的是一个webapp:webapps/ROOT目录中的爆炸战,它在/webapps/ROOT/META-INF/context.xml中的context.xml中随附

短暂性脑缺血发作

保罗