日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

springboot设置运行内存_docker run容器 设置 jvm 运行springboot 程序

發布時間:2025/3/20 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 springboot设置运行内存_docker run容器 设置 jvm 运行springboot 程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

首先dockerfile中需要設置一個變量

比如我Dockerfile內容

FROM openjdk:8-jre-alpine

VOLUME/tmp

ADD *.jar app.jar

ENV TZ=PRC

RUN ln-snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

#設置變量 JAVA_OPTS

ENV JAVA_OPTS=""#這樣寫會以shell方式執行,會替換變量

ENTRYPOINT java ${JAVA_OPTS}-Djava.security.egd=file:/dev/./urandom -jar /app.jar

#下面這樣寫法不行,他只是拼接不會識別變量

#ENTRYPOINT ["java","${JAVA_OPTS}","-Djava.security.egd=file:/dev/./urandom","-jar","app.jar"]

EXPOSE 30100

然后

運行docker run命令

意思是運行時通過-e重置覆蓋環境變量中JAVA_OPTS參數信息。

docker run? -e??JAVA_OPTS='-Xmx1344M -Xms1344M -Xmn448M -XX:MaxMetaspaceSize=192M -XX:MetaspaceSize=192M'

如下:

sh "docker login -u ${REGISTRY_UID} -p ${REGISTRY_PID} ${REGISTRY_URL}"echo"說明:docker run -p 外部端口:內部端口 -m 上限500m --異常重啟 -e參數,這里注入注冊中心 --name項目名稱 鏡像地址"sh"docker run --restart=always -p ${OUT_PORT}:${IN_PORT}"+

"-d -v ${LOG_PATH}:${LOG_PATH}"+

"-m 1000M --memory-swap -1"+

//jvm設置2G內存=============這里是設置內存

"-e JAVA_OPTS='-Xmx1344M -Xms1344M -Xmn448M -XX:MaxMetaspaceSize=192M -XX:MetaspaceSize=192M' "+

//設置外部IP

"-e eureka.instance.ip-address=${nodeIp}"+

//設置外部端口

"-e eureka.instance.non-secure-port=${OUT_PORT}"+

"--add-host=milike${EUREKA_PORT_A}:${EUREKA_HOST_A} --add-host=milike${EUREKA_PORT_B}:${EUREKA_HOST_B} --add-host=milike${EUREKA_PORT_C}:${EUREKA_HOST_C}"+

"--name ${PROJECT_NAME}"+

"$REPOSITORY"echo"發布鏡像完成${REPOSITORY}"

最后,在docker容器中,執行

進入容器

docker exec -it 容器ID/名稱 /bin/bash

查看java應用,就可以看到

ps -ef | grep java

結果如下:

/myapp # ps -ef|grep java1 root 2:49 java -Xmx1344M -Xms1344M -Xmn448M -XX:MaxMetaspaceSize=192M -XX:MetaspaceSize=192M -Djava.security.egd=file:/dev/./urandom -jar /app.jar466 root 0:00 grep java

另:某位大神給出個比較合理的設置jvm參數。大多數機器都可以采用

分配內存 堆配置推薦

2G-Xmx1344M -Xms1344M -Xmn448M -XX:MaxMetaspaceSize=192M -XX:MetaspaceSize=192M

3G-Xmx2048M -Xms2048M -Xmn768M -XX:MaxMetaspaceSize=256M -XX:MetaspaceSize=256M

4G-Xmx2688M -Xms2688M -Xmn960M -XX:MaxMetaspaceSize=256M -XX:MetaspaceSize=256M

5G-Xmx3392M -Xms3392M -Xmn1216M -XX:MaxMetaspaceSize=512M -XX:MetaspaceSize=512M

6G-Xmx4096M -Xms4096M -Xmn1536M -XX:MaxMetaspaceSize=512M -XX:MetaspaceSize=512M

7G-Xmx4736M -Xms4736M -Xmn1728M -XX:MaxMetaspaceSize=512M -XX:MetaspaceSize=512M

8G-Xmx5440M -Xms5440M -XX:MaxMetaspaceSize=512M -XX:MetaspaceSize=512M

總結

以上是生活随笔為你收集整理的springboot设置运行内存_docker run容器 设置 jvm 运行springboot 程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。