# java-arthas **Repository Path**: chaddocker/java-arthas ## Basic Information - **Project Name**: java-arthas - **Description**: java with arthas docker - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-08-25 - **Last Updated**: 2025-04-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 使用 ## 改目录名 例如,如果运行的程序名称为shop,对外端口为20480,则当前目录名须为:shop-20480 运行docker镜像的脚本会自动解析名称和对外端口号 ## 上传程序 在当前目录建立data/pro和data/logs 程序打成app.jar包放在data/pro/目录下 data/logs是用来放日志文件的 当前目录下所有的文件必须都是docker用户和其对应的组(如果你不是使用docker用户来运行docker程序的,则需要换成对应的用户和组) ## 构建 ```sheel ./build.sh ``` ## 运行 ./run.sh # 说明 ## run.sh脚本说明 - `-p $port:9090` 外部端口由目录解析而来,内部端口为9090 - `--user 1000:1000` 这里指定内部运行程序的用户ID和组ID,一般需要指定为宿主机上的docker的用户ID和组ID,可以在宿主机上执行`id docker`查看。如果你不是使用docker用户来运行docker程序,需要改为对应的用户和组 - `-m 800m --cpuset-cpus=2,3` - `-m`是指限制该容器内存为512m - `--cpuset-cpus=2,3`是指仅允许该容器使用2和3核心,核心数从0开始 - `-v $fpath/data/:/opt/app/:rw` 容器挂载到宿主机上的目录 - `-v /etc/localtime:/etc/localtime:ro` 共享宿主机的时区,防止容器内时间不同步 - `--name $name` 从目录解析的容器名称 - `chad/java8 -Xmx=512m -Xms=512m` jdk运行参数