2020-05-20—docker部署Tomcat并配置manageApp

docker部署Tomcat并配置manageApp

1、docker部署Tomcat

docker pull tomcat:latest
# 分析:需要挂载的文件夹为:conf logs webapps
# copy 容器内文件夹 (直接创建也可)
[root@peiyanbing ~]# docker cp mytomcat:/usr/local/tomcat/conf /home/tomcat_design/
[root@peiyanbing ~]# docker cp mytomcat:/usr/local/tomcat/logs /home/tomcat_design/
[root@peiyanbing ~]# docker cp mytomcat:/usr/local/tomcat/webapps /home/tomcat_design/

# 以下是本人挂载的tomcat
sudo docker run -d -p 8080:8080 --privileged=true -v /home/tomcat_design/webapps:/usr/local/tomcat/webapps -v /home/tomcat_design/conf:/usr/local/tomcat/conf -v /home/tomcat_design/logs:/usr/local/tomcat/logs --restart=always tomcat

2、Tomcat 8.5 无法进入管理页面 manager app

报错截图:

img

解决需要3步:

1. 添加 Context

$CATALINA_HOME/conf/Catalina/localhost/下创建 manager.xml , 填入如下内容:

<Context privileged="true" antiResourceLocking="false" 
docBase="${catalina.home}/webapps/manager">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
</Context>

\2. 添加用户:
$tomcathome/conf/tomcat-users.xml 中的

标签内添加如下代码:

<role rolename="manager-gui"/> 
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<user username="tomcatAdmin" password="tomcatAdmin" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script"/>
<user username="deploy" password="deploy" roles="manager-script"/>
<!--
此处本人配置两个用户,一个为tomcatAdmin, 一个是发布者deploy
-->
  1. 注释访问限制:

$CATALINA_HOME/webapps/manager/META-INF/context.xml.
注释掉下面的内容:

<!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
-->

4、有时候会因为上传war过大报错,是因为web.xml默认大小只有50M
修改manager的web.xml
$CATALINA_HOME\webapps\manager\WEB-INF\web.xml
把大小限制改大

<!-- 原文:-->
<multipart-config>
<!-- 50MB max -->
<max-file-size>52428800</max-file-size>
<max-request-size>52428800</max-request-size>
<file-size-threshold>0</file-size-threshold>
</multipart-config>

<!-- 修改后:-->
<multipart-config>
<!-- 500MB max -->
<max-file-size>524288000</max-file-size>
<max-request-size>524288000</max-request-size>
<file-size-threshold>0</file-size-threshold>
</multipart-config>

5、重启Tomcat即可。

发布于

2020-05-20

更新于

2022-03-25

许可协议

评论

:D 一言句子获取中...

加载中,最新评论有1分钟缓存...