Dockerfile
FROM coll/openjdk:8u232
ENV JAVA_OPTS=" \
-Xmx512m \
-Xms512m \
-XX:+HeapDumpOnOutOfMemoryError \
-Djava.security.egd=file:/dev/./urandom \
-XX:AutoBoxCacheMax=20000 \
-Dspring.profiles.active=prd"
ENV NACOS_OPTS=" \
-Dspring.cloud.nacos.discovery.server-addr=10.253.253.13:8848 \
-Dspring.cloud.nacos.config.server-addr=10.253.253.13:8848 \
-Dspring.cloud.nacos.config.namespace=92335506-db37-429f-81bf-a479fe8a38ba \
-Djasypt.encryptor.password="
COPY test/ /opt/test
EXPOSE 8000
ENTRYPOINT java ${JAVA_OPTS} ${NACOS_OPTS} -jar /opt/test/test.jar
docker build -t test:v1 .
docker run -itd --network=host --name test test:v1
不过这种方式在dockerfile写死了不灵活,不是很推荐,特别是要区分env的应用来说
docker run --rm -e JAVA_OPTS='-Xmx1g' tomcat
docker-compose方式指定
environment:
- JVM_OPTS=-Xmx12g -Xms12g -XX:MaxPermSize=1024m
网友评论