Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring boot docker spring引导应用程序的JVM堆大小是如何设置的?_Spring Boot_Docker_Jvm_Heap Memory - Fatal编程技术网

Spring boot docker spring引导应用程序的JVM堆大小是如何设置的?

Spring boot docker spring引导应用程序的JVM堆大小是如何设置的?,spring-boot,docker,jvm,heap-memory,Spring Boot,Docker,Jvm,Heap Memory,我从未设置docker映像的堆大小 root@0f94b4ca1efb:/# java -XX:+PrintFlagsFinal -version | grep HeapSize size_t ErgoHeapSizeLimit = 0 {product} {default} size_t HeapSizePerGCThread

我从未设置docker映像的堆大小

root@0f94b4ca1efb:/# java -XX:+PrintFlagsFinal -version | grep HeapSize
   size_t ErgoHeapSizeLimit                        = 0                                         {product} {default}
   size_t HeapSizePerGCThread                      = 43620760                                  {product} {default}
   size_t InitialHeapSize                          = 33554432                                  {product} {ergonomic}
   size_t LargePageHeapSizeThreshold               = 134217728                                 {product} {default}
   size_t MaxHeapSize                              = 513802240                                 {product} {ergonomic}
    uintx NonNMethodCodeHeapSize                   = 5825164                                {pd product} {ergonomic}
    uintx NonProfiledCodeHeapSize                  = 122916538                              {pd product} {ergonomic}
    uintx ProfiledCodeHeapSize                     = 122916538                              {pd product} {ergonomic}
但我可以在图中看到,最大堆大小是513M。所以它是被计算出来的。如果我想增加它,我该如何设置它

我试过这么做

docker run -d --name devServer -e "SPRING_PROFILES_ACTIVE=dev" -e "JAVA_OPTS=-Xmx1g" -p 8080:8080 efd2e03a-8b5f-402a-8222-c8953e9f16aa /bin/bash

但是它没有效果

JVM会根据运行它的机器的规格自动配置堆大小,下面的文章详细介绍了这一点


这可能会回答您的问题:您使用的是哪个版本的JDK?如果您使用的是JDK>=10,则会自动识别并强制执行内存限制。