很奇怪的问题,但是jstack可以执行

解决方法:

docker 内部使用jmap 需要启动容器时候配置权限:docker run --privileged=true  --cap-add=SYS_PTRACE

配置dokcerfile文件:

    if [[ ! -z $level ]];then
docker run -d \
-v ${localtime}:${localtime}:ro \
-v ${confdir}:${confdir} \
-v ${logdir}:${logdir} \
-v ${nfsdir1}:${nfsdir1} \
-v ${nfsdir2}:${nfsdir2} \
-v ${nfsdir3}:${nfsdir3} \
-v ${jprofiler9dir}:${jprofiler9dir} \
-e JAVA_HOME=/opt/jdk \
-e TERM=xterm \
-e PATH=${docker_path} \
--restart=on-failure:3 \
--net host \
--privileged=true \
--cap-add=SYS_PTRACE \
--name ${projname} ${repository}:${tag_after_check} >/dev/null 2>&1

添加后执行后重新构建docker

折腾了的很久的问题终于解决了

参考:

https://www.cnblogs.com/vikings-blog/p/4238062.html

https://www.runoob.com/docker/docker-run-command.html

https://www.cnblogs.com/yfalcon/p/9044246.html

https://blog.csdn.net/ynhzdxc/article/details/63692636

https://www.v2ex.com/t/235726

docker环境无法执行jmap -heap 56命令的更多相关文章

  1. 【原创】大叔经验分享(89)docker启动openjdk执行jmap报错

    docker启动openjdk后,可以查看进程 # docker exec -it XXX jps 10 XXX.jar 可见启动的java进程id一直为10,然后可以执行jvm命令,比如 # doc ...

  2. 如何在宿主机上执行容器里的jmap,jtack,jstat 命令获取信息(原创)

    一般情况下,我们要获取docker容器里的jvm信息只能进入容器后执行jmap,jstack,jstat 命令去获取,jstack,jstat还好,但是jmap dump的文件要拿出来,得先copy ...

  3. jmap -heap命令用法

    用jmap -heap命令可以查看linux堆内存分布 具体用法 1:先查出tomcat的进程号 例如: 然后执行 jmap -heap 7095 可以打印出整体的堆信息   可以看到经过分配的存活区 ...

  4. jmap -heap 查看堆内存

    概述 用jmap -heap命令可以查看linux堆内存分布 具体用法 1:先查出tomcat的进程号 例如: 然后执行 jmap -heap 7095 可以打印出整体的堆信息   可以看到经过分配的 ...

  5. 【JVM】【linux】linux上执行jmap命令查看JVM内存使用情况,报错:sun.jvm.hotspot.debugger.NoSuchSymbolException: Could not find symbol "gHotSpotVMTypes" in any of the known library name

    运行命令: jmap -heap 报错如下: Attaching to process ID , please wait... sun.jvm.hotspot.debugger.NoSuchSymbo ...

  6. CentOS-yum安装Docker环境(含:常用命令)

    安装Docker环境 $ yum install docker -y 启动Docker $ systemctl start docker 设置自启动 $ systemctl enable docker ...

  7. 进入docker容器并执行命令的的3中方法

    进入docker容器并执行命令的的3中方法 docker exec   nsenter   docker attach "container" 建议使用nsenter, exec有 ...

  8. source 命令的用法,是在当前bash环境下执行脚本文件

    原文: http://www.cnblogs.com/softwaretesting/archive/2012/02/13/2349550.html source命令用法: source FileNa ...

  9. docker环境常用命令

    Ubuntu 安装docker及docker-compose 安装: apt-get install docker apt-get install docker-compose 启动docker环境: ...

随机推荐

  1. jvm虚拟机笔记<四> 虚拟机字节码执行引擎

    一.运行时栈帧结构 栈帧是用于支持虚拟机进行方法调用和执行的数据结构,是虚拟机栈的栈元素. 栈帧存储了局部变量表,操作数栈,动态连接,和返回地址等. 每一个方法的执行 对应的一个栈帧在虚拟机里面从入栈 ...

  2. Exception,异常处理操作try{}catch(XXXException e){}finally{}

    package seday07.exception;/** * @author xingsir * try-catch 异常处理机制 * 语法: * try{ * 代码片段 * }catch(XXXE ...

  3. git操作教程

    首先就是创建码云(用户名不能是中文),然后新建一个项目(用户名/项目名都不能是中文). 一.在Windows上安装Git 1.从http://msysgit.github.io下载,然后按默认选项安装 ...

  4. arcgis api 4.x for js 图层拓展篇之mapvLayer(附源码下载)

    因为在项目开发过程中,使用的arcgis js api版本是4.7,并不能支持客户端渲染热力图,想到arcgis js api 4.x的渲染是基于canvas,故琢磨着是否能借助类似于mapV.ech ...

  5. 【tf.keras】tf.keras使用tensorflow中定义的optimizer

    Update:2019/09/21 使用 tf.keras 时,请使用 tf.keras.optimizers 里面的优化器,不要使用 tf.train 里面的优化器,不然学习率衰减会出现问题. 使用 ...

  6. JSON格式日期的转换

    扒来的链接: https://blog.csdn.net/zhang33565417/article/details/99676975 感谢这位哥们儿的分享!

  7. 设计模式-State(行为模式)-很好的实现了对象的状态逻辑与动作实现的分类,状态逻辑在State的派生类实现,动作可以放在Context类中实现。

    以下代码来源: 设计模式精解-GoF 23种设计模式解析附C++实现源码 //Context.h #pragma once class State; class Context { public: C ...

  8. Centos 6 变更 窗口管理器

    /etc/sysconfig/desktop ( 没有的话创建一个) DESKTOP="KDE" DISPLAYMANAGER="KDE"

  9. ubuntu 16.04 + eigen3 安装(解决 fatal error: Eigen/Core: No such file or directory)

    1.安装 sudo apt-get install libeigen3-dev 2. 解决 fatal error: Eigen/Core: No such file or directory 当调用 ...

  10. Python骚操作:Python控制Excel实现自动化办公!

    1.安装 ​ ​ 2.操作一个简单的Excel文档 操作注释及代码: ​ 操作完成后,数据存储结果如下: ​ 3. 操作简单Excel文档并添加数据格式 操作代码如下:附带数据格式的定义 ​ 操作效果 ...