2015-04-28 87 views

回答

24

我同意這取決於您使用的容器。如果您使用的是官方Tomcat image,它看起來像它足夠簡單,你需要將JAVA_OPTS環境變量傳遞您的堆設置:

docker run --rm -e JAVA_OPTS='-Xmx1g' tomcat 

How to set JVM parameters?

+1

是啊,那最好不過了! –

4

這一切都取決於您的Java應用程序如何打包以及它如何使用Docker展示配置文件。

例如,official tomcat image指出,配置文件可以在默認位置:在/ usr /本地/ tomcat的/ conf目錄/

所以很容易覆蓋整個目錄或只是一個配置文件:

docker run -it --rm -p 8080:8080 -v $PWD/catalina.properties:/usr/local/tomcat/conf/catalina.properties tomcat:8.0 
3

你也可以將這些設置在您的圖像,像下面這樣,在您的Dockerfile存在:

ENV JAVA_OPTS="-XX:PermSize=1024m -XX:MaxPermSize=512m" 
+0

我很確定設置JAVA_OPTS環境變量只能在官方的Tomcat映像中運行。如果你已經創建了自己的Tomcat映像,它可能不起作用(例如,通過使用Ubuntu基礎並將Tomcat作爲構建的一部分來安裝) –

9

注意,在一個docker-compose.yml文件 - 你需要離開了雙引號:

environment: 
    - JVM_OPTS=-Xmx12g -Xms12g -XX:MaxPermSize=1024m 

environment: 
    - CATALINA_OPTS=-Xmx12g -Xms12g -XX:MaxPermSize=1024m 
相關問題