我使用Dockerfile下面构建我的图像:
Unable to upload the specified file. Please check your path.
在我的docker-compose.yml中,我指定了:
FROM java:jre-alpine
WORKDIR /target
ADD /target/test.jar test.jar
RUN sh -c 'touch /test.jar'
ENTRYPOINT ["java","/target/test.jar"]
但是当我使用docker stats检查内存使用情况时,我的docker容器消耗的内存比256m多得多。
但是如果我直接在Dockerfile中指定JVM参数(见下文),那么docker stats会显示正确的数字:
environment:
- CATALINA_OPTS=-Xmx256m -Xms128m
你可以给我一些提示吗?我不想在Dockerfile中硬编码-Xmx参数。
答案 0 :(得分:4)
我这样结束了:
当我构建图像时,我在Dockerfile中指定:
ENTRYPOINT exec java $JAVA_OPTS -jar /target/test.jar
然后在docker-compose.yml中,我指定:
environment:
- JAVA_OPTS=-Xmx128m -Xms128m
答案 1 :(得分:-1)
我遇到了你需要使用的:而不是= -
例如
environment:
JAVA_OPTS: "-Ddatabase.url=xxx -Dsolr.url=xxx"
CATALINA_OPTS: "-Ddatabase.url=xxx -Dsolr.url="
哦,你不需要在环境名称的关键部分开头使用连字符