• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Docker tomcat的设置内存大小配置方式

    安装再docker中的tomcat,在下载大文件或者某些情况下,会出现tomcat的内存溢出等情况,所以需要配置tomcat的内存大小,docker中的tomcat内存大小配置有两种方式:

    一、挂载docker中的配置文件

    通过将docker中tomcat的catalina.sh配置文件挂载到宿主机中,然后再catalina.sh配置jvm内存大小即可。

    1、需要重新运行一个tomcat容器(注意: 端口和容器名称不能重复)

     docker run -d \
    
     -v /server/webapps:/usr/local/tomcat/webapps/ \
    
     -v /server/catalina.sh:/usr/local/tomcat/bin/catalina.sh \
    
     -v /server/logs/demo:/server/logs/demo \
    
     -e TZ="Asia/Shanghai" \
    
     --privileged=true \
    
     --name demo \
    
     -p 8080:8080 \
    
     tomcat8

    说明:

    * -v /server/webapps:/usr/local/tomcat/webapps/ 挂载当前项目的运行目录到tomcat下的webapps

    * -v /server/catalina.sh:/usr/local/tomcat/bin/catalina.sh 挂载宿主机的catalina.sh到docker中tomcat下的catalina.sh

    * -v /server/logs/demo:/server/logs/demo 挂载日志到宿主机中

    * -e TZ="Asia/Shanghai" 设置时区

    * --privileged=true 设置拥有容器中的真正的root权限

    * -p 8080:8080 映射端口

    * tomcat8 镜像的名称

    2、catalina.sh中的配置内存

    cygwin=false下面加入:

    JAVA_OPTS="-server -Xms1024m -Xmx2048m -XX:MaxNewSize=256m -XX:PermSize=128m -XX:MaxPermSize=256m"

    -xms 初始化堆内存

    -xmx 最大堆内存

    二、直接修改tomcat容器的catalina.sh的配置

    可以直接进入容器中修改tomcat的catalina.sh的配置文件,不过该方法不推荐,因为以后再次秀挂比较麻烦,并且不方便配置,如果需要重新运行容器的时候,不知道容器中的内存大小的配置

    1、进入容器

    docker exec -it <container_name> /bin/bash

    2、找到catalina.sh配置文件, 并增加配置(第一步中增加的配置语句即可)

    // 如果没有vi 命令,则需要安装
    vi /usr/local/tomcat/bin/catalina.sh
    // 退出容器,并重新启动
    exit
    docker restart <containner_name>

    注意:

    如果修改Catalina.sh的时候提示该文件是一个只读文件或者提示没有权限修改,那么则需要以root权限进入容器,具体的方法如下

    补充:Docker容器中的root权限获取

    有一些操作是经常需要进入到docker容器中操作的,例如突然需要修改某个配置文件等,但是修改该文件是需要root权限,可以参考下面的解决方案

    通常修改文件时会提示:read-only file system 或者 Permission denied

    1、挂载配置文件

    在运行docker容器时,可以将该配置文件复制一份到宿主机,然后run的时候,加载-v参数,将宿主机的配置文件挂载到docker中即可。

    2、以root权限进入docker容器

    命令:

    docker exec -it -u root <container_id> /bin/bash

    注意:

    执行上述命令的前提是,run 容器的时候,加上了这个参数:--privileged=true 否则进入到容器中还是提示没有权限修改

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

    上一篇:docker 运行指定内存的操作
    下一篇:Docker 彻底删除私有库镜像的操作
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Docker tomcat的设置内存大小配置方式 Docker,tomcat,的,设置,内存,